移动/调整分区大小后出现 MBR 问题(无法启动;BIOS 无法看到操作系统)

移动/调整分区大小后出现 MBR 问题(无法启动;BIOS 无法看到操作系统)

我已经阅读了一段时间了,有一些想法,但不想丢失所有数据。

我正在进行更新,发现 /dev/sda2 分区中剩余空间不足。我认为这是我的 Ubuntu 的“启动”分区。

我打开了 GParted,缩小了 SDA1 并移动了 SDA2 分区,并且增大了 SDA1 分区。

在我完成磁盘后,GParted 说我可能在启动时遇到问题。

我现在无法让我的 BIOS 看到操作系统,并且我的系统将无法再启动。

我尝试使用 livecd 重写我的 MBR 和 GPT 表,但我不知道自己在做什么,或者我做错了。

我发现可能有一种方法可以执行 grub-update 并可能修复 MBR……

答案1

您的磁盘是具有 BIOS 模式引导代码的 MBR 磁盘,但它还具有EFI 系统分区 (ESP)上面有 EFI 模式的引导加载程序文件。这是一个不寻常的组合,而且不清楚您的计算机是在 BIOS/CSM/legacy 模式下启动的,还是在 EFI/UEFI 模式下启动的。这一事实使得很难建议您如何修复引导加载程序,因为如果计算机实际上是在 EFI 模式下启动的,那么基于之前 BIOS 模式安装的假设的修复过程可能会失败,反之亦然。还不清楚您的计算机有多旧,或者它使用的固件是什么品牌和什么年代的——一些 EFI(尤其是较旧的 EFI)有缺陷,在 EFI 模式下启动时可能会运行不良。当使用 MBR 磁盘时尤其如此。

根据我掌握的有限信息,我倾向于使用我自己的GPT fdisk ( gdisk)将磁盘从 MBR 转换为 GPT 格式。然后就可以在电脑上安装 EFI 模式的引导加载程序了——你可以使用 Boot Repair(从 Ubuntu 恢复工具启动)在 EFI 模式下)来(重新)安装 EFI 模式版本的 GRUB 或使用我的 USB 闪存驱动器版本的rEFInd 启动管理器并通过 Debian 包或 PPA 永久安装它。

另一方面,如果你的电脑 EFI 有足够多的 bug,使用 BIOS 模式的引导加载程序可能更可靠。如果是这种情况,你不应该弄乱分区表。相反,你应该学习如何控制电脑的启动模式并启动紧急 Ubuntu 系统在 BIOS 模式下。然后您可以运行 Boot Repair。运气好的话,这将设置一致的 BIOS 模式 GRUB,然后启动计算机。

您可以通过查找名为 的目录来测试您是在 BIOS 模式还是 EFI 模式下启动 Ubuntu /sys/firmware/efi。如果该目录存在,则表示您已在 EFI 模式下启动;但如果不存在,则表示您已在 BIOS 模式下启动。控制启动模式可能很棘手,并且具体方法因计算机而异。请参阅我在 CSM 上的页面有关此主题的一些信息,但请注意,您可能必须在固件和计算机的内置启动管理器中四处寻找,以找出适合您的特定计算机的信息。

答案2

虽然我有 gpt,但通常 Ubuntu live-usb 上的自动启动修复 3 步解决方案对我有用,并使我的系统再次可启动。

关联:https://help.ubuntu.com/community/Boot-Repair

第二个选项。

相关内容