安装(半?)重新平衡的 btrfs 驱动器

安装(半?)重新平衡的 btrfs 驱动器

在 Ubuntu 16.04 上有一个 2 驱动器 raid1 btrfs 阵列,我不再需要成为 raid1。我想我会尝试分离磁盘并将其转​​换为单个驱动器以保持数据跟随这些说明:

umount t
remove disk t1---
mount /dev/t1 t -o degraded
btrfs bal start -mconvert=single -dconvert=single t
btrfs dev delete missing t
btrfs bal start -mconvert=dup

btrfs bal start -mconvert=single -dconvert=single t该步骤完成后必须重新启动[不要问] 。在重新启动之前,我验证磁盘仍然安装在“t”处,并且我可以看到我期望的所有文件和目录。

重新启动后,我找不到继续该过程的方法。我无法正常挂载:

$ sudo mount /dev/sdc1 /mnt/t
mount: wrong fs type, bad option, bad superblock on /dev/sdc1,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try dmesg | tail or so.

$ dmesg | tail
[ 2885.993255] BTRFS info (device sdc1): disk space caching is enabled
[ 2886.021902] BTRFS: failed to read chunk tree on sdc1
[ 2886.031164] BTRFS: open_ctree failed

而且我无法将其降级安装(与重新平衡之前的方式相同):

$ sudo mount /dev/sdc1 /mnt/t -o degraded
mount: wrong fs type, bad option, bad superblock on /dev/sdc1,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try dmesg | tail or so.

$ dmesg | tail
[ 3110.756320] BTRFS info (device sdc1): allowing degraded mounts
[ 3110.756330] BTRFS info (device sdc1): disk space caching is enabled
[ 3110.838626] BTRFS info (device sdc1): bdev /dev/sdc1 errs: wr 470683, rd 503082, flush 0, corrupt 0, gen 0
[ 3111.986155] BTRFS: missing devices(1) exceeds the limit(0), writeable mount is not allowed
[ 3112.019429] BTRFS: open_ctree failed

所以我无法继续该程序。有办法继续吗?正如我之前提到的,分区在重新启动之前似乎是健康的。显然,一种解决方案是在 raid1 对中的另一个驱动器上执行该过程,但该驱动器的状况可能更糟(系统在平衡完成之前重新启动)。

这不是危机 - 我的数据已备份。我只是想避免复制 4TB,也许该解决方案将来会对其他人有所帮助。

相关内容