将 Linux 系统与 Windows 一起迁移到新的 SSD 上

将 Linux 系统与 Windows 一起迁移到新的 SSD 上

我有一台新电脑,配备了新的 SSD #2。他们在电脑上预装了 Windows,我对此很满意。

但是,我的旧 SSD #1 上有一个 Linux 系统,我想保留这些数据。问题是我只设法将 SSD #1 连接到带有外部源的新 PC,因此我决定将该系统与 Windows 一起从 SSD #1 移至 SSD #2。使用 Sata SSD - 准确地说是 USB。

问题是我不知道该怎么做才能

  1. 两种操作系统均可运行
  2. SSD #1 的大小为 220 GB,而在 SSD #2 上我想指定 500 GB 并扩展分区大小。
  3. 如何保存我的 SSD #1 Linux 分区 (grub、home、system)
  4. 让 grub 运行两个系统

SSD #1 现在在 GPARTED 中的样子 在此处输入图片描述

SSD #2 在 GPARTED 中的样子。我已经尝试分配 500 GB。 在此处输入图片描述

请帮助我将旧的 Linux 系统从 SSD #1 移到新的 SSD #2,同时还安装了 Windows。

我的猜测是逐个分区创建并复制数据。但是,我怀疑有些陷阱我没有遇到。例如如何处理启动分区?它不会弄乱结构吗?当然,挑战在于保留系统数据。这会使任务变得复杂。

答案1

由于我目前还不能发表评论,而且我也不是专家,但我会根据我迄今为止所做的事情提出一些建议(仅供参考,我之前在修复 Linux 启动时,曾两次完全破坏了我的 Windows 启动记录,并成功修复了它)

我假设您已经在实时启动中使用了 gparted。然后,

  1. 只需在 SSD #2 上创建//home以及任何您想要的其他)分区。
  2. 将分区复制到新的 SSD
    • 如果您想要更新/重新安装 Linux,请不要复制/分区,而只/home复制分区。然后使用实时启动安装 Linux,并/home在选项中选择您的分区Something Else(不要检查格式)
    • 参考此回答
  3. 我建议不要复制/boot分区,因为这将在新系统上通过命令完成update-grub。对于你的情况,只需复制//home我猜/swap不需要“复制”)
  4. 立即移除 SSD #1
  5. 现在您的 Linux 数据已复制完毕,我猜(从我迄今为止的经验来看)您需要chroot进入复制的 linux SSD #2,然后运行sudo update-grub​​,并确认Windows和您的都Linux被检测到并添加到新系统上的 grub 中。(此操作将为 Linux 添加条目到/dev/nvme0n1p1
  6. 现在,如果您重新启动,您应该会看到 GRUB 启动菜单,其中包含适用于 Windows 和 Linux 的选项,并且 Linux 应该有您的数据。

但我建议你先进行研究,等待专家对我的回答的评论,然后再继续做你不知道的事情

谢谢

相关内容