![EFI 分区和启动管理器 - 双启动 Windows 8 和 Ubuntu](https://linux22.com/image/1102342/EFI%20%E5%88%86%E5%8C%BA%E5%92%8C%E5%90%AF%E5%8A%A8%E7%AE%A1%E7%90%86%E5%99%A8%20-%20%E5%8F%8C%E5%90%AF%E5%8A%A8%20Windows%208%20%E5%92%8C%20Ubuntu.png)
因此,我去年购买了一台预装了 Windows 8 的 HP Pavilion g6 笔记本电脑,并成功安装了 ubuntu 13.04。但每次启动时,我都必须按 F9 进入 BIOS 选项,然后才能从那里选择 OS 启动管理器和 ubuntu [我无法强制 grub 接管 Windows 启动加载程序]。
最近我想安装 ubuntu 14.04。但我最终想要的是 grub 接管 windows 8 引导加载程序,这样我就不必每次需要引导到 ubuntu 时都按 F9。
我已启用 UEFI 并禁用安全启动。使用 Windows 中的 EaseUS 分区管理器,我探索了 ESP [EFI 系统分区]。
我发现以下内容:
1.该分区有 2 个文件夹 - BOOT 和 EFI。
2.BOOT只有1个文件-BOOT.SDI
3.EFI 有 4 个文件夹 - Microsoft、Boot、HP 和 ubuntu
4.此处的 Boot 文件夹只有 1 个文件 - bootx64.efi,我在搜索其他文件夹的内容时发现,该文件的文件名与 ./HP/EFI/Boot/ 中包含的文件名相同
5.HP 文件夹有 5 个子文件夹 - SystemDiags、BIOSUpdate、BIOS、BOOT、EFI。此处的 EFI 文件夹有 2 个子文件夹 - Boot 和 Microsoft,它是包含 BOOTX64.EFI 的启动文件夹。
所以,我的问题是,在我已在单独的分区上重新安装 ubuntu 之后,这里给出的方法是否会:Windows 8 不再将 Grub 作为默认启动管理器,还能正常工作,并允许我在启动时使用 grub 在 ubuntu 和 windows 之间进行选择吗?因为我记得上次尝试使用它时,没有成功。
另外,出于好奇,如果我以某种方式从 ESP 分区中删除 HP 文件夹,那么这是否与安装了 DOS 操作系统的笔记本电脑(现在没有 HP 的残留)不同?
还有一件事,如果有人可以解释一下为什么 Windows 默认启动而 Ubuntu 的 grub 无法启动?
答案1
如果您尝试bcdedit
在 Windows 中使用,如Windows 8 不再将 Grub 作为默认启动管理器您提到的问题,如果这不起作用,那么它在 Ubuntu 14.04 上的效果不会比在 13.04 上好。基本上,您现在看到的是一个有缺陷的固件。您可以咨询 HP,看看他们是否在固件更新中修复了该错误。(他们可能称之为“BIOS”,但实际上它不是 BIOS;它是一个 EFI。)
如果 HP 没有更新固件,那么鉴于您的电脑太旧,无法退回商店退款,您唯一的选择就是找到解决方法。一种可能有效的方法是重命名EFI/Microsoft/Boot/bootmgfw.efi
为其他名称,然后重命名您选择的启动管理器以使用该名称。您可以使用高级选项标签引导修复自动执行此操作,也可以手动执行。或者,如果您切换到重新索引作为启动管理器,您可以使用其mvrefind.sh
脚本来完成工作,如下所述这里。请注意,这种重命名操作是一种非常粗暴的解决方法,可以解决本来不应该出现的错误。实际上,“修复”可能会导致后续出现更多问题,或者如果 Windows 发现其引导加载程序已被覆盖,则可能会撤消此修复。如果您这样做,我强烈建议您备份 ESP,以便在后续发生不良事件时将其恢复到已知工作状态。文件级备份(使用tar
、cp
或诸如此类)应该足够了。