Questions tagged «btrfs»

Oracle包含在Linux内核中的写时复制(COW)文件系统。

2
在逻辑LVM卷中调整btrfs分区的大小
遵循Derobert的技巧,在调整LVM卷大小时可以调整基础文件系统的大小: lvm> lvextend -r -l +100%FREE /dev/VolGroup00/lvolhome fsck from util-linux 2.25.2 /sbin/fsck.btrfs: BTRFS file system. Size of logical volume VolGroup00/lvolhome changed from 3.04 GiB (777 extents) to 14.94 GiB (3824 extents). Logical volume lvolhome successfully resized fsadm: Filesystem "btrfs" on device "/dev/mapper/VolGroup00-lvolhome" is not supported by this tool fsadm failed: …
13 lvm  btrfs 

4
有没有办法监视btrfs重新平衡的进度?
我正在替换镜像的btrfs中发生故障的硬盘驱动器。 btrfs device delete missing /[mountpoint]花费的时间很长,所以我认为它实际上是在重新平衡替换驱动器上的数据。 有什么方法可以监视这种操作的进度? 我不一定期望外观漂亮的GUI甚至%计数器;而且如果必要的话,我愿意写几行shell脚本,但是我什至不知道从哪里开始寻找相关数据。btrfs filesystem show例如,它刚刚挂起,大概在显示平衡的fs的任何信息之前等待平衡操作完成。
13 btrfs 

4
笔记本电脑用户应该从ext4切换到btrfs吗?
与此相关。 我想利用操作系统切换来升级到BTRFS。 BTRFS声称提供了很多功能(数据丢失的弹性,RAID的自我修复,元数据和数据的校验和,压缩,快照)。但是,与fsync密集型程序(例如,dpkg我知道eatmydata和糟糕的apt-btrfs-snapshot程序)一起使用时,速度很慢,而且我不会设置RAID:p。 EXT4仅允许对元数据进行校验和,并且不压缩数据。 在6年中,由于硬盘损坏(飞行后),我不得不重新安装操作系统两次。第一次导致笔记本电脑无法启动,第二次损坏是由于电影损坏,然后是对OS二进制文件的md5sum检查而确定的。(SMART告诉我磁盘是正常的)。目前,这头马虎的行为很奇怪。我不知道应该归咎于硬件还是软件,但是我怀疑硬件(它们都是在飞行后立即开始的)。 您是否会因为数据压缩和校验和而建议改用笔记本电脑的BTRFS,还是应该坚持使用EXT4? (我不在乎哪个变量相对于“最佳”,但我几乎没有使用BTRFS的经验,并希望获得一些反馈) 编辑: 让我们更清楚一点:我知道,BTRFS仍被标记为实验性的,但是SUSE表示现在不再应该这样做了。Oracle也是如此(我知道Oracle是谁)。大量发行版已经建议安装BTRFS,其中大多数计划在未来几个月内切换到BTRFS。 两个事实: 备份损坏的数据毫无价值。我不明白为什么我似乎是唯一一个要打扰的人。那不是常识吗?与此同时: 别告诉我应该备份:我已经备份了。 不要再暗示备份就足以保证我的数据安全,除非您愿意给我TB的可用空间来进行数年的备份。 损坏的文件= / => Linux抱怨。所以: 不要仅仅因为操作系统正在启动就假设您的系统/数据是理智的。 我希望您能理解,我喜欢(元)数据校验和,而不是过度设计和piece肿的软件,因为它不方便执行BTRFS来检查数据完整性。 现在,我不是要问哪个FS更好吗?问题是,考虑到我定期进行备份,BTRFS是否仍处于实验性阶段,无法用于其数据完整性检查功能,还是应该坚持使用EXT4?


3
普通用户为什么不能删除btrfs子卷
使用循环安装的用户创建的btrfs文件系统,并正确设置权限,用户可以自由创建btrfs子卷: user@machine:~/btrfs/fs/snapshots$ /sbin/btrfs sub create newsubvol Create subvolume './newsubvol' 但是,尝试删除新创建的子卷会导致错误: user@machine:~/btrfs/fs/snapshots$ /sbin/btrfs sub del newsubvol Delete subvolume '/home/user/btrfs/fs/snapshots/newsubvol' ERROR: cannot delete '/home/user/btrfs/fs/snapshots/newsubvol' root用户当然可以删除它: root@machine:/home/user/btrfs/fs/snapshots# /sbin/btrfs sub del newsubvol Delete subvolume '/home/user/btrfs/fs/snapshots/newsubvol' 创建和删除操作之间的行为差​​异似乎有些奇怪。谁能对此有所启发? 这是命令的确切顺序: user@machine:~$ dd if=/dev/zero of=btrfs_disk bs=1M count=100 100+0 records in 100+0 records out 104857600 bytes (105 MB) copied, …
12 btrfs 

5
btrfs是否足够稳定以适合家庭使用?[关闭]
这个问题不太可能对将来的访客有所帮助;它仅与较小的地理区域,特定的时间段或格外狭窄的情况(通常不适用于Internet的全球受众)有关。要获得使该问题更广泛适用的帮助,请访问帮助中心。 7年前关闭。 btrfs终于找到了进入最新内核的方法,它是否被认为足够稳定且安全,可以用于家庭备份方案(作为zfs的替代方案)?

1
为什么“ cp -R --reflink = always”在btrfs文件系统上执行标准副本?
Btrfs支持写时复制。我试图使用该功能来克隆目录: cp -R --reflink=always foo_directory foo_directory.mirror 我希望该命令几乎立即完成(如btrfs subvolume snapshot),但是该cp命令似乎执行了缓慢的标准复制。 根据手册页,我希望--reflink=always强制执行写时复制: 当指定--reflink [= always]时,执行轻量级复制,仅在修改时复制数据块。如果这不可能,则复制失败,或者如果指定了--reflink = auto,则退回到标准副本。 问题: 你知道为什么--reflink=always不起作用吗? 我应该改用哪些选项(或其他命令)?
12 cp  btrfs 

1
将btrfs放在lvm上有意义吗?
这是OpenSUSE Leap42。我有一台装有2个500 GB SATA HDD驱动器的计算机,为了加快速度,我在系统中放入了一个30 GB的小型SSD驱动器。在安装过程中,HDD断开了连接,因为它们混淆了安装程序(和我)。一旦系统启动,我就很容易地将/ home目录交换为XFS逻辑卷(我主要使用LVM来轻松添加空间)。然后/ opt填满(chrome和botanicula),我想将其放在HDD上。因此,我创建了一个卷并使用BTRFS对其进行了格式化。经过一番@ subvolumes摸索后-fstab中的内容使我在BTRFS上阅读了我所需的内容-/ opt现在的大小为100 GB。 但是问题是:用btrfs格式化LVM卷有意义吗?本质上,它们都是体积处理系统。 为了说明起见,我粘贴了fstab(#注释显示了我的编辑)和vgscan + lvscan输出: ~> cat /etc/fstab UUID=1b511986-9c20-4885-8385-1cc03663201b swap swap defaults 0 0 UUID=30e20531-b7f1-4bde-b2d2-fab8eeca23af / btrfs defaults 0 0 UUID=30e20531-b7f1-4bde-b2d2-fab8eeca23af /boot/grub2/i386-pc btrfs subvol=@/boot/grub2/i386-pc 0 0 UUID=30e20531-b7f1-4bde-b2d2-fab8eeca23af /boot/grub2/x86_64-efi bt rfs subvol=@/boot/grub2/x86_64-efi 0 0 UUID=3e103686-52e9-44ac-963f-5a76177af56b /opt btrfs defaults 0 0 #UUID=30e20531-b7f1-4bde-b2d2-fab8eeca23af …
11 linux  partition  lvm  btrfs 

1
删除btrfs子卷将释放多少空间?
如果我要删除Btrfs磁盘上的一个(或几个)子卷(而不实际删除它们),有什么方法可以计算出多少空间?我知道“目前没有代码可以为您进行计算”,但是您将如何进行呢? 我也想知道为什么他们这么说会这么慢?根据我的经验,实际上删除一个子卷并询问可用空间都非常快,为什么假设做同样的事情会那么慢呢?
11 btrfs 

3
如何使用btrfs发送/接收通过慢速且不可靠的网络连接传输备份快照?
我想使用btrfs的发送/接收功能通过相当慢的连接(初始种子约为50-100GB,上游带宽约为1-2MBit / s)和不可靠的连接(两端每天强制中断)传输备份快照。 我看到以下要求: 加密传输(通常使用SSH隧道实现) 中断连接的坚固性 似乎ZFS能够自动恢复中断的传输,类似于rsync的方式。这是否也适用于BTRFS?对于中断的传输,发送/接收Wiki页面没有用。如果btrfs将恢复中断的传输,那么我所要做的就是使用SSH隧道并在中断时恢复。 如果没有,我必须在它们之间使用一些缓冲区,以确保btrfs-connection能够在中断后幸存,或者使两个服务器彼此靠近以进行播种(这对于每天传输出色的添加文件来说是个问题。容量和发送快照)。 传输种子和快照需要考虑什么?
11 linux  backup  btrfs 

3
是什么使rsync的一侧如此繁忙?
我的局域网上有一台Debian机器,作为其他机器的备份服务器。它在LVM和btrfs上将四个HDD组合成一个软件RAID 5 md设备。备份是使用rsync进行的,大型文件系统需要一个多小时。很长时间以来,我一直认为我对此无能为力。 但是,最近,我注意到硬盘的活动在传输的两端都非常不同。尽管运行Gentoo并主要使用ext4的发送方几乎没有任何磁盘IO,但是接收方一直很忙。由于大多数数据在两次传输之间不会改变,因此我认为元数据读取应构成大部分数据。但是,如果在btrfs中读取inode而不是在ext4中进行如此大的工作,我会感到非常惊讶。 iotop 经确认,接收方的磁盘读取速度约为1-4 MB / s,而发送方偶尔只有0.5 MB / s的突发速度。 我的问题是,谁能解释这是怎么回事?最好带有一些指示,如果可能的话,如何解决该问题。 也许有一些我可以使用的btrfs调整标志,或者类似的东西。我需要备份服务器上具有快照功能的FS,而我尝试使用FreeBSD和ZFS会很快导致FS不一致,因此目前我看不到btrfs的替代方案。因此,告诉我使用ext4或zfs的答案可能会收到投票,但没有复选标记。 根据cjm的要求,正在使用Rsync选项: --rsync-path='rsync --fake-super' --archive # -rlptgoD --hard-links # detect and preserve these --acls --xattrs --sparse --noatime # based on patch from samba #7249c1 --delete --delete-delay --fuzzy --human-readable # size suffixes, base 1000 --stats 以及一堆-f删除某些文件的规则。 btrfs的安装选项报告mount为 rw,nosuid,noexec,noatime,nospace_cache …
11 performance  rsync  io  mdadm  btrfs 

4
将大量文件复制到USB驱动器时,为什么我的桌面会锁定?
即使负载很重,我的桌面也通常反应灵敏。但是,当我将文件复制到USB驱动器时,它总是会在一段时间后锁定。“锁定”是指: 将焦点从一个窗口移到另一个窗口可能需要10到20秒 切换桌面可能需要10到20秒 视频不再更新(在YouTube中,音频继续播放,只有视频冻结) 发生这种情况时,系统负载不会异常高。有时,我在xosview上看到很多白色,表明内核在某个地方很忙。 乍一看,将文件复制到USB驱动器似乎会以某种方式干扰compiz,但我无法想象连接是什么。 这是输出htop: 这是iostat -c -z -t -x -d 12分钟的挂起期间的输出: 19.07.2012 20:38:22 avg-cpu: %user %nice %system %iowait %steal %idle 1,27 0,00 0,38 37,52 0,00 60,84 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util sdg 0,00 2,00 0,00 216,00 0,00 109248,00 …
11 linux  kde  btrfs 


1
列出shell中的所有btrfs文件系统和子卷
是否有一种便捷的方法来获取所有btrfs文件系统子卷上的信息而无需使用C,即在POSIX shell中? /sys/fs/btrfs仅包含有关文件系统的信息,不包含有关子卷的信息,因此当前我最终将所有文件系统装入temp文件夹,使用进行扫描btrfs subvol list,然后解析结果输出。不用说,这很丑陋。 这是一个3.16.x内核和btrfs-progs v3.14.1(来自Ubuntu 14.10的现货)。 以下是我当前正在使用的(丑陋)脚本。我知道我可以使用纯C获得所需的信息,而这也许最终我会做的,但是我想知道是否有一种更简单,更优雅的方法。 #!/bin/bash for i in /sys/fs/btrfs/*[!features]; do device="/dev/$(basename $i/devices/*)" mountpoint=/var/lib/btrfs/tmp/mnt/$(basename "$i") [ -d "$mountpoint" ] || mkdir "$mountpoint" grep -qs $mountpoint /proc/mounts [ $? -ne 0 ] && mount -v "$device" "$mountpoint" while read -r subvol; do # whatever you want done …
11 shell  btrfs 

3
我如何找出冻结机器的原因?
我正在这台机器上运行Arch: 3.40GHz i7六核(4930K) 16GB DDR3 1600MHz RAM Raid0中2xSamsung 840 EVO SSD(使用BTRFS raid) 当我在带有几个VM(2个或3个)的Arch上运行VMware时,为它们分别提供大约2-4个内核和每个2GB RAM,我的系统开始出现随机冻结。每隔几分钟,系统将冻结10到30秒,然后再次开始移动,直到30秒后冻结,直到我关闭VM。当系统死机时,鼠标仍然可以正常移动,但是应用程序在主机上停止响应-vmware不响应,firefox(也在主机上打开)也不响应,等等。 冻结发生时,如果我正在运行进程监视器,它的确显示了vmware最大化的几个核心,但是同时,还有其他未使用的核心。我还拥有足够多的RAM-虚拟机总共使用6GB,主机剩余10GB。我的交换空间为0,所以交换不会减慢任何速度。 有报道称,由于btrfs导致文件在文件系统级别上碎片化,虚拟机可能运行缓慢。据我所知,碎片只是传统硬盘上的一个问题-SSD没有读取所需的读取头,因此它们不在乎文件是否高度碎片化。 当我运行Debian 7时,这种情况从未发生过,所以我很确定这不是硬件问题。 我可以运行哪些工具来弄清楚为什么系统不断冻结?我尝试了top / htop和iotop(系统死机时,没有写或读过多的东西)。似乎没有任何类型的btrfs活动监视器可以告诉它是否在跟上写/读任何内容方面遇到问题。还有什么我可以尝试的吗?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.