帮助合并从 ext4 转换的两个 BTRFS 文件系统

帮助合并从 ext4 转换的两个 BTRFS 文件系统

因此,我的计算机中有三个硬盘驱动器,并且正在运行 Ubuntu 22.04.1, /dev/sda1并且/dev/sdc1两个内部驱动器最初是EXT4,但btrfs成功转换为 ,没有任何问题。/dev/sda1最初安装在/nasa/16TB,而/dev/sdc1安装在/nasa/14TB/dev/sdb3是根驱动器,应该保持为EXT4

这是我所做的。

  1. 我通过运行重新启动进入救援模式systemctl rescue
  2. 我通过运行以下命令转换了两个硬盘:

for id in sda1 sdc1;do fsck.ext4 -fyv /dev/$id;btrfs-convert -d -p -L /dev/$id;done

  1. 完成后,我进行了修改/etc/fstab以添加此行,同时删除了挂载点的旧条目。

UUID=(id of /dev/sdc1) /nasa btrfs compress=zstd:8,noatime 0 0

  1. 我在/nasa名为的子目录中创建了一个子目录14TB,并将根级别的所有内容移动到该子目录中。

  2. 我使用 重复了步骤 3 和 4 /dev/sda1,但将子目录命名为16TB

现在,我尝试运行以下命令来尝试将所有内容组合起来,就像一次突袭一样。

btrfs device add /dev/sda1 /nasa

相反,我收到此错误消息。

/dev/sda1 appears to contain an existing filesystem (btrfs).
ERROR: use the -f option to force overwrite of /dev/sda1

如何合并两个驱动器而不覆盖任一驱动器上的数据?我还希望它以单一模式运行数据并以重复模式运行元数据。

答案1

如果要将另一个磁盘添加到现有btrfs文件系统,则需要备份要添加的磁盘的现有数据。它将被清除。

然后您就可以添加设备了。之后您就可以恢复数据了。

您当前将磁盘安装在哪里并不重要。

此后,您将拥有一个btrfs可以通过任意磁盘安装到一个位置的文件系统。

相关内容