删除分区后恢复 Windows 加载程序

删除分区后恢复 Windows 加载程序

我刚刚在 Windows 8.1 旁边安装了 Ubuntu 16.04,但在安装过程中我删除了 Windows 保留分区。我以 UEFI 模式安装了 Ubuntu,但我不确定 Windows 是否以 UEFI 模式安装。 gparted 的屏幕截图

我使用 unetbootin + gparted 创建了 Windows 可启动 usb(FAT32),并尝试恢复加载程序:创建一个新的 NTFS 分区(sda2)并使用多种恢复变体:标准 MS 修复启动工具(无用)、命令

bootsect.exe /nt60 all 
bootrec.exe /fixboot
bootrec.exe /fixmbr
bootrec.exe /RebuildBcd

一些 grub 操作:更新、向菜单添加项目等。我有点困惑。现在我遇到了以下情况:当我打开笔记本电脑时,Windows 加载程序显示错误消息。我只能通过在启动列表中选择它(f9)来启动 Ubuntu。我该怎么办?

更新:启动信息

答案1

您的配置很奇怪。您似乎自己在 BIOS/CSM/旧模式下安装了 Windows 8.1,然后在 EFI/UEFI 模式下安装了 Ubuntu。这不是一个令人满意的组合;几乎总是最好以相同模式(BIOS 或 EFI)启动两个操作系统,而不是混合模式。从广义上讲,有三种方法可以继续:

  • 安装 BIOS 模式的 Ubuntu 引导加载程序-- 这可能是解决您的问题最简单的方法。引导修复工具可能可以做到这一点,或者您可以安装grub-pc然后执行sudo grub-install /dev/sda
  • 转换为 GPT 并安装 EFI 模式的 Windows 引导加载程序- 看这篇博文了解执行此操作的一般过程。请注意,完成 Windows BIOS/MBR 到 EFI/GPT 的转换后,您可能需要重新注册固件中的 GRUB。同样,Boot Repair 可能可以解决问题。如果您采用这种方式,我建议您禁用 CSM,以避免激活 CSM 导致启动路径出现额外的复杂性。(这种复杂性首先导致了您的问题。)
  • 保持混合模式-- 许多 EFI 都允许您使用其内置的启动管理器在 BIOS 模式和 EFI 模式启动之间切换(通常在启动过程早期通过按 Esc、Enter 或功能键来访问,但具体细节因系统而异)。或者,您可以安装我的rEFInd 启动管理器在 Ubuntu 中编辑其refind.conf文件:取消注释该scanfor行并确保它hdbios是选项之一。然后,当 rEFInd 出现时,您应该能够启动 Ubuntu 或 Windows。无论你用哪种方式,这种方法都假设你有一个有效的 Windows BIOS 模式引导加载程序。可能已经是这样了,但我不能确定。

由于 EFI 启动方式的系统差异以及可能存在意外的怪癖,使您的特定设置变得复杂,因此要使这些选项中的任何一个发挥作用,可能需要至少进行一些反复试验。当您重新配置引导加载程序时,很多事情都可能出错,因此您最终可能会再次发帖询问后续问题。

无论你选择哪种方式,我建议你下载并准备好 rEFInd 的 USB 闪存驱动器或 CD-R 版本。(你可以从rEFInd 下载页面.) 无论分区表是什么样子,您都应该能够使用 rEFInd 启动 Ubuntu,因此,如果在进行更改时出现问题,则将 rEFInd 放在外部介质上可以作为紧急启动工具。

有关您遇到问题的原因的更多信息,请参阅我在 CSM 上的页面。但请注意,我的页面是按照 Windows 处于 EFI 模式且 Ubuntu 安装在 BIOS 模式下的配置编写的,因为这是更常见的错误。您的情况与此相反。但基本原理是相同的。

相关内容