将 Ubuntu 16.04 迁移到更大的驱动器并转换为 BTRFS 并添加交换

将 Ubuntu 16.04 迁移到更大的驱动器并转换为 BTRFS 并添加交换

我可以将我的 Ubuntu 安装从 SD 卡添加到我最终到达的 SSD 并启动它,但是一旦我调整分区大小(使用 livecd 中的 gparted),它就会停止启动。我尝试过重新安装 grub2,但没有任何效果。当我再次从 SD dd 时它再次工作,但我无法扩展分区。我正在使用 ext2,但我想将其转换为 btrfs 并添加交换分区。

答案1

我建议在 SSD 上创建一个 2GB ext4 启动分区,然后将内核和 initrd 复制到其中。

如果您只想将 SD rootfs 复制到 SSD 上,我认为 dd 不是最好的方法。我做类似的事情:

mkdir /bind
mount -o bind / /bind
cd /bind
cp -a . /path/to/new/root/subvol/

然后你必须编辑新的 fstab 才能有意义,

LABEL={ssd-btrfs-label}  /  btrfs noatime,subvol={new-root-subvol}
LABEL={ssd-boot-label}   /boot ext4 noatime

然后,通过从 SD 启动并编辑内核命令行来添加/更改来启动到新的 rootfs:

 root=LABEL={btrfs-filesystem-label}
 rootflags=noatime,subvol={new-root-subvol}

引导到新系统后,您可以使用 grub-install 在 SSD 上正确安装引导加载程序。

根据您的内核和硬件,您可以使用其他安装选项调整性能:

 lazytime,nodatacow

相关内容