btrfs 余额需要无限时间

btrfs 余额需要无限时间

我有一对用于备份的硬盘。他们使用具有 RAID1 配置的共享 BTRFS 文件系统来存储数据和元数据。集体空间大小为 4TiB,我已经用完了空间(目前还剩大约 20GiB),并决定将它们转换为 data=single(我还将这些数据备份到云端,所以我不认为 RAID1 就是全部)有帮助)。为了执行此转换,我运行了

sudo btrfs balance start -dconvert=single -mconvert=raid1 /.backup

这会在启动后的前几分钟内转换少量数据,然后不再继续。例如:

$ sudo btrfs fi usage -T /.backup
Overall:
    Device size:                   3.64TiB
    Device allocated:              3.64TiB
    Device unallocated:            2.00MiB
    Device missing:                  0.00B
    Used:                          3.57TiB
    Free (estimated):             23.74GiB      (min: 23.74GiB)
    Free (statfs, df):            43.60GiB
    Data ratio:                       1.91
    Metadata ratio:                   2.00
    Global reserve:              512.00MiB      (used: 0.00B)
    Multiple profiles:                 yes      (data)

                         Data      Data    Metadata System               
Id Path                  single    RAID1   RAID1    RAID1     Unallocated
-- --------------------- --------- ------- -------- --------- -----------
 1 /dev/dm-3              88.00GiB 1.70TiB 29.00GiB   8.00MiB     1.82TiB
 2 /dev/mapper/cryptsdb1  88.00GiB 1.70TiB 29.00GiB   8.00MiB     1.00MiB
-- --------------------- --------- ------- -------- --------- -----------
   Total                 176.00GiB 1.70TiB 29.00GiB   8.00MiB     1.82TiB
   Used                  173.39GiB 1.68TiB 14.42GiB 368.00KiB            

88GiB 在几分钟后就完成了,但余额现在已经运行了几个星期。 ,sudo btrfs balance cancel /.backup, 也sudo kill -9无法停止该过程。唯一有效的就是关闭计算机电源。我已经尝试过两次,结果相似。

我如何才能成功执行此转换?我尝试按照描述禁用配额这里但没有成功。我考虑过删除一些备份快照以释放空间。那会有帮助吗?

我使用的是 Linux 5.12.4。

相关内容