将新设备添加到b​​trfs卷,但可用的大小几乎没有增长

时间:2013-07-24 14:32:20

标签: linux filesystems raid

我有一个btrfs卷,它已经由两个不同的设备组成,并且安装在/ samples上。 df报告的总大小为194GB。

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
...
/dev/sdc1       194G  165G   20G  90% /samples

现在,我想从另一台设备向该卷添加另外500GB。 我做了

$ sudo mkfs.btrfs -m raid0 -d raid0 /dev/sdb
$ sudo btrfs device add /dev/sdb /samples

我的文件系统现在正确报告:

$ sudo btrfs filesystem show
Label: none  uuid: 545e95c6-d347-4a8c-8a49-38b9f9cb9add
    Total devices 3 FS bytes used 161.98GB
    devid    3 size 465.76GB used 0.00 path /dev/sdb
    devid    2 size 93.13GB used 84.51GB path /dev/sdc1
    devid    1 size 100.61GB used 84.53GB path /dev/sdc6

但是当我这样做时,我会错过一些空间:

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
...
/dev/sdc1       660G  165G   43G  80% /samples

我加了500GB!为什么我没有更多可用?

要调试,我运行了这个命令:

$ sudo btrfs filesystem df /samples
Data, RAID0: total=162.00GB, used=159.79GB
Data: total=8.00MB, used=7.48MB
System, RAID1: total=8.00MB, used=24.00KB
System: total=4.00MB, used=0.00
Metadata, RAID1: total=3.50GB, used=2.19GB
Metadata: total=8.00MB, used=0.00

我的数据在RAID0中,没关系。那么我的500GB哪里消失了,我该如何解决这个问题呢?

由于

1 个答案:

答案 0 :(得分:4)

感谢您的回答。我正在计算我在这里和btrfs邮件列表中的各种回复的答案。

  1. 我的新500G没有显示,因为它们最初无法使用。
  2. 我需要平衡三个分区上的数据:

    btrfs文件系统余额/样本

  3. 在同一磁盘上使用两个分区(/ dev / sdc1和/ dev / sdc6)根本不是最佳选择,因为它们会花时间在两个分区之间进行搜索。在这种情况下,更好的选择是使用“单个”,其中分区一个接一个地填充(没有条带化)。使用新的btrfs工具,可以使用以下命令:

    btrfs balance start -dconvert = single,soft / samples

  4. 在Debian / Ubuntu主机上,支持平衡转换的最新btrfs工具通常无法以打包格式提供,需要从源代码编译。
  5. 再次感谢您的回答。