我想在 BTRFS@root
子卷中安装 Ubuntu,但 Ubuntu 安装程序不允许更改默认子卷并安装在@
和中@home
。
我试图@root
在安装后创建一个子卷,但遇到了问题。我需要编辑fstab
GRUB。GRUB 需要知道在哪里找到新的根目录。我读过社区编辑,/boot/grub/grub.cfg
但有些人说这不安全,因为/boot/grub/grub.cfg
它会在下一次内核更新或运行时被覆盖update-grub
。
如何将根从一个子卷移动到另一个子卷?
答案1
如果您知道自己在做什么,那么就不会很复杂。
从 LiveUSB 启动。
挂载磁盘
/mnt
并创建@root
子卷。使用 将
cp -a
所有文件从@
复制@home
到@root
。您可以使用mv
,但在所有文件确定之前保留旧子卷更为安全。/etc/fstab
使用选项更新。如果您不想要单独的,subvol=@root
请不要忘记移除支架。(为什么?)/home
/home
使用 将磁盘挂载到例如
/mnt
。-O subvol=@root
还可以运行sudo mount --bind /dev /mnt/dev sudo mount --bind /proc /mnt/proc sudo mount --bind /sys /mnt/sys
Chroot
/mnt
并更新 grub。