将分区复制到新硬盘后无法启动笔记本电脑

将分区复制到新硬盘后无法启动笔记本电脑

我把笔记本电脑的 HDD 换成了 SSD。这是一台戴尔 XPS 15,自带 Windows,我在上面安装了 Ubuntu,已经用了 3 年了。

HDD 设置了几个分区,包括 sda5 (/) 和 sda7 (/home)。

我使用 gdisk (GPT) 创建了分区表,并将分区 / 和 /home 复制到 SSD sbd2(新 /)中。分区 sdb1 配置为 BIOS 的 1 MB。

然后我启动 CD-ROM 安装 grub。没有错误。运行 update-grub。确定。

启动时,我可以看到:“未找到操作系统”。这不是拼写错误,实际上写的是操作系统(而不是操作系统)。

然后我再次使用 CD-ROM 启动,安装并运行引导修复。它执行了它的工作,没有报告错误,并要求重新启动。信息是http://paste.ubuntu.com/12093343/

但我仍然收到相同的消息“未找到操作系统”。有什么想法吗?

答案1

一些观察:

  • 您声称复制了//home分区,但新磁盘只有一个 Linux 文件系统分区。如果您执行了文件级复制(使用cptar或类似的东西),则可以实现此目的;然而:
    • 至少,您必须调整/etc/fstab引导加载程序配置以适应新设置。引导加载程序更改应由 Boot Repair 处理,但我不知道它是否会调整/etc/fstab,从您的输出来看,它似乎已经不是已更新。这不能解释您的主要问题,但您迟早要处理它。
    • 执行文件级复制时必须小心谨慎,以确保在新文件系统上获得正确的权限和所有权。如果权限错误,系统可能无法启动;或者可能会启动但会出现许多错误。同样,这个问题无法解释您当前的问题,但您必须意识到这一点。请参阅这一页有关如何使用tar复制 Linux 安装的信息。
  • 您的分区号让我怀疑您的第一次安装可能使用了主引导记录 (MBR)分区系统;但您的新安装使用GUID 分区表 (GPT)。您的当前系统设置为以 BIOS/CSM/传统模式启动。理论上,这应该可行;但实际上,有些主板在从 GPT 磁盘以 BIOS 模式启动时会出现问题。如果我没看错,这是一个问题,那么有多种解决方法:
    • 通常可以通过在 MBR 的 type-0xEE 分区上设置“启动标志”来解决这些问题。请注意,在使用或 GParted 的任何分区上设置“启动标志”parted不是执行此操作。您必须使用fdisk(在 Ubuntu 14.04 或更早版本中)或在整个磁盘partedGParted。请参阅我的这个页面了解有关此类问题的更多信息。
    • 如果您的固件足够新(比 2011 年中更新),那么它可能是 EFI,而不是 BIOS,在这种情况下,最好为 Linux 安装 EFI 引导加载程序。测试这一点的一个简单方法是准备一个 USB 闪存驱动器或 CD-R,里面有我的rEFInd 启动管理器。如果你能用它启动,那么你可以安装 rEFInd PPA 或 Debian 软件包——但你需要创建一个EFI 系统分区 (ESP)在您的磁盘上。
    • 您可以在磁盘上从 GPT 分区切换到 MBR 分区。您可以使用 进行就地转换gdisk,如所述这里。然后您需要将 GRUB 重新安装到磁盘。

就我个人而言,我不会尝试将单独的根 ( /) 和/home分区合并为一个分区;单独的/home分区具有明显的优势,而将两者合并则会失去这些优势。根据磁盘大小,您可能最好使用克隆兹拉复制您的磁盘;但据我所知,Clonezilla 无法处理从较大分区到较小分区的复制,因此它可能不是一个选项,至少对整个磁盘来说不是。(不过,您可能能够使用 Clonezilla 复制您的根分区,然后使用/homecp进行复制tar。)

答案2

您需要更新 SSD 上的 /etc/fstab 文件。它仍然有旧的硬盘分区,甚至还有一个您不再拥有的交换分区。其他一切都很好,UUID 都是正确的。

答案3

我支持几台装有 Windows 7 和 Ubuntu 的计算机。当我更换硬盘时,我使用克隆兹拉制作映像并将其恢复到新驱动器。我使用分区调整分区大小并根据需要标记启动分区。

如果我要转到较小的驱动器,我会先根据需要调整分区大小,然后制作映像。当我恢复到新驱动器时,我会使用 Clonezilla 中的忽略大小选项。如果我要转到的驱动器较大,我会在将映像恢复到较大的驱动器后调整大小。

还有其他方法可以做到这一点,但是这个方法还没有让我失望。话虽如此,我还没有在 SSD 驱动器上尝试过这个方法。

相关内容