我刚刚在我的Ubuntu 14.04中创build了一个btrfs RAID10arrays,使用命令:
mkfs.btrfs -d raid10 -m raid10 /dev/sda /dev/sdb /dev/sdc /dev/sdd
我的4个硬盘都是2TB硬盘。 在RAID10下,我预计总共可以看到约3.6TB的可用空间。 然而,出于某种原因,我看到总共可用7.3TB(请参阅下面的/dev/sda ):
Filesystem Size Used Avail Use% Mounted on /dev/sde1 42G 1.7G 38G 5% / none 4.0K 0 4.0K 0% /sys/fs/cgroup udev 7.8G 12K 7.8G 1% /dev tmpfs 1.6G 1.2M 1.6G 1% /run none 5.0M 0 5.0M 0% /run/lock none 7.9G 0 7.9G 0% /run/shm none 100M 0 100M 0% /run/user /dev/sda 7.3T 13G 7.3T 1% /mnt/tmp
这是出乎意料的行为?
其他信息:
bofh@stronghold:~$ sudo btrfs fi show Label: none uuid: a3a65325-0184-46d8-bef7-7ed066c9e320 Total devices 4 FS bytes used 29.14GiB devid 1 size 1.82TiB used 16.03GiB path /dev/sda devid 2 size 1.82TiB used 16.01GiB path /dev/sdb devid 3 size 1.82TiB used 16.01GiB path /dev/sdc devid 4 size 1.82TiB used 16.01GiB path /dev/sdd
当我尝试列出正在使用的RAIDtypes时,我看到“RAID10”和“单个”
bofh@stronghold:~$ sudo btrfs fi df /mnt/tmp Data, RAID10: total=52.00GiB, used=48.77GiB Data, single: total=8.00MiB, used=0.00 System, RAID10: total=16.00MiB, used=16.00KiB System, single: total=4.00MiB, used=0.00 Metadata, RAID10: total=2.00GiB, used=64.12MiB Metadata, single: total=8.00MiB, used=0.00
另一个比较奇怪的是,btrfs设备扫描不会产生任何结果:
bofh@stronghold:~$ sudo btrfs device scan Scanning for Btrfs filesystems bofh@stronghold:~$
我正在使用我刚安装的Ubuntu 14.04服务器,并运行了一次远程升级。
任何build议感激!
我看到总共可用7.3TB
这是正确的。
简单的答案是,你看到了可用于放置镜像副本的原始空间,所以将其分成两半,以获得预期的3.6TB。
计算磁盘空闲空间是与btrfs混淆的。 官方的btrfs常见问题有一个问题, 为什么很难计算在btrfs中的可用空间 。
btrfs文件系统可以包含具有不同raid级别的文件块。 你可以有一些没有镜像副本的文件(“单个”或“raid0”)和镜像的其他文件(“raid1”)。
你现在已经在你的文件系统中有这个了。
当我尝试列出正在使用的RAIDtypes时,我看到“RAID10”和“单个”
这是告诉你,文件系统中的less量数据是不镜像的(“单个”)。 你需要做一个btrfs平衡来解决这个问题。 我会build议做:
btrfs balance start -dconvert = raid1,profiles = single -mconvert = raid1,profiles = single -sconvert = raid1,profiles = single –force / mnt / tmp
这将把单拷贝数据转换为镜像文件数据,元数据和系统数据(d,m和s)。 “profiles”参数将会影响当前单个副本的数据。