我在我的旧笔记本电脑上运行带有 LUKS 全盘加密的 ubuntu 22
nvme0n1 disk 476.9G
├─nvme0n1p1 /boot/efi part 512M vfat
├─nvme0n1p2 /boot part 1.7G ext4
└─nvme0n1p3 part 474.8G crypto_LUKS
└─nvme0n1p3_crypt crypt 474.8G LVM2_member
├─vgubuntu-root / lvm 472.8G ext4
└─vgubuntu-swap_1 [SWAP] lvm 1.9G swap
我计划更换一台具有类似存储容量的新笔记本电脑
我有一种方法可以迁移整个磁盘内容,这样我就不必手动重新安装任何东西?我应该加密传输整个磁盘 img 吗?在新的 latop(BIOS/grub 设置)上是否还有其他需要设置的内容不会与磁盘映像一起传输?
PS:当然我有一个外部USB HDD作为传输介质
总体策略
如果(而且是很大程度上)新笔记本电脑具有类似的硬件,例如内置驱动器、显卡和 WiFi,则旧安装可能在新笔记本电脑上运行。在这种情况下,您可以创建整个磁盘的映像文件并将其恢复到新计算机的内置磁盘中。
如果没有,您将需要安装 Ubuntu(如果需要,可以加密),安装您拥有/想要的应用程序并从备份中恢复您的个人文件。
无论哪种情况,您都必须将个人文件备份到外部驱动器中,该驱动器不是您用于传输传输介质的驱动器。如果可能,请使用两种不同的方法进行两次备份。
内部驱动因素
您说:“两台笔记本电脑都有相似的存储容量。”类似的方法对于全盘克隆来说还不够好。不同的制造商使用不同的硬件和固件。因此,尽管 SSD/HDD 都标称容量为 500 GB,但其中一个可能会比另一个稍大或稍小。随便看SSD/HDD的大小很难判断哪个是哪个。如果您的新 SSD/HDD 即使小一个字节,克隆的映像也将无法容纳。
可能还有其他我不知道的 SSD/HDD 注意事项。其他读者可以在评论中告诉我,我会在稍后的答案中纳入它们。
硬件考虑
在 Ubuntu 中有两种类型的显卡、WiFi、指纹读取器等驱动程序:
打开应用程序“软件和更新” ,选择顶部的“附加驱动程序”选项卡。如果您在底部看到“未使用专有驱动程序”,并在主窗口中看到“没有可用的附加驱动程序”,则您的笔记本电脑只需要开源驱动程序。
使用“尝试”选项通过 Ubuntu Live USB 启动您的新笔记本电脑,并按照相同的过程查看新笔记本电脑是否需要任何其他专有驱动程序。如果确实如此,那么您当前安装的 Ubuntu 在移植到新笔记本电脑上后可能无法运行。
选项:
1:用旧的 SSD/HDD 替换新的 SSD
如果您可以轻松打开笔记本电脑,并且笔记本电脑具有可移动 SSD(或 HDD),那么您可以尝试此操作。除非你破坏或短路某些东西,否则这是最简单的解决方案。如果两台笔记本电脑包含两种不同类型的 SSD,且无法插入彼此的插槽,则该方法将无法工作。
2:克隆整个SSD/HDD
在具有 MBR 和旧 BIOS 的旧系统中,可以将一个或两个分区从旧磁盘克隆到新磁盘,并且可以正常工作。 这对于基于 GPT 和 UEFI 的新计算机不起作用。
如果旧磁盘具有 MBR 而新磁盘具有 GPT,则克隆磁盘可能无法进行。
您可以尝试各种克隆实用程序 ISO 并从中创建可启动 USB,或者使用“尝试”选项使用 Ubuntu Live USB。磁盘应用程序可以创建内部磁盘的磁盘映像并将其保存在 USB HDD 中。您的两台笔记本电脑都必须至少有两个 USB 端口:
3:安装并从备份恢复
这是我最喜欢的选项。这样可以避免打开和撬出笔记本电脑中的磁盘、计算磁盘空间的位数和字节数、MBR 和 GPT 之间的混淆、开源和专有驱动程序以及您可能遇到的任何其他问题。只需按照以下步骤操作:
/etc/
。/etc/
。完毕。
希望这可以帮助
在某些情况下,您只需将硬盘安装在不同的系统中即可。我将一个有多个用户的 Ubuntu 22.04 系统从 Dell 755 转移到 Dell 7020。它立即生效。
撤销计划是将主硬盘放回原来的系统中。
我成功从 转移
thinkpad t14s gen1 intel
到thinkpad e14 gen5 intel
。SSD 磁盘的物理大小不同,因此我无法物理交换它。
在软件方面,它们的存储大小完全相同。
以下是任何有兴趣的人的程序:
令人惊讶的是,我不需要更新
/etc/fstab
或重新安装 grub(我想 clonezilla 会处理好这件事)。我不需要
update-initramfs
。一切都开箱即用。
感谢 clonezilla 团队
我曾多次在机器之间移动整个系统,但存在一些情况:
如果不满足这些条件,您可能会或可能不会成功 - 我无法保证任何事情。
最简单的方法可能是使用Clonezilla。准备可启动的 Clonezilla USB 或 DVD(如果您有 DVD 驱动器),然后从它启动“源”计算机。您还需要有一个外部硬盘来存储 Clonezilla 生成的磁盘映像。创建映像后,将外部 HDD 重新连接到“目标”计算机,从 Clonezilla USB/DVD 启动并将映像恢复到新计算机。
Clonezilla 网站上详细描述了整个过程。这在大多数情况下应该有效。
如果没有,有多种“手动”方法,从手动创建和恢复磁盘映像或分区映像(当然,您必须在从实时 USB/DVD 启动计算机时执行此操作,而不是从已安装的系统启动计算机),甚至制作
tar
整个文件系统的存档并将其解压到目标磁盘上的适当分区。在任何这些情况下,您可能还需要调整/etc/fstab
新的分区名称,并且还需要安装/重新安装 GRUB。然而,这可能需要一些系统启动过程的高级知识来手动修复 Clonezilla 无法修复的问题。我遇到过一个情况,当将一个相当旧的操作系统从一台服务器移动到另一台服务器时,我必须在已经克隆的目标服务器上更新内核(在无法启动的系统上! - 这确实很棘手),因为内核太旧,并在启动时显示一条消息,表明它不支持较新服务器的处理器。