如何在 Windows 8 和 UEFI 中使用 EasyBCD 作为引导加载程序?

Chr*_*chs 4 dual-boot uefi windows-8 easybcd

我知道这个问题已经被问了很多,但我没有在这里找到答案。

几个小时前,Ubuntu 12.04.2 64 位离线安装在一个 ext4 分区上,并且还创建了一个交换分区。

安装很顺利,但现在我无法进入 Ubuntu。

我想使用 Windows 8 启动管理器在两个操作系统之间进行选择,所以我下载了 EasyBCD 并添加了一个 Ubuntu 条目。

该条目显示在启动管理器菜单中,但是当我单击 Ubuntu 时,我收到以下消息:

NST/AutoNeoGrub0.mbr not found
Run Code Online (Sandbox Code Playgroud)

我尝试启用/禁用安全启动并重新启动,但它仍然显示该错误消息。

开机修复总结 最新开机修复总结

出于绝望,我试图自己找到解决方案并通过 EasyBCD 重置 BCD 配置。现在 Grub 和 Ubuntu 都可以正常启动,但我无法再启动 Windows 8。

然后,在为 Ubuntu 安装所有更新后,无论出于何种原因,我重新启动了系统,现在我无法启动到 Ubuntu。只有通过 Live CD 和旧的 Linux 条目才能启动它。

Rod*_*ith 6

首先,我最后一次听说,EasyBCD 对在基于 EFI 的计算机上管理 Windows/Linux 双引导没有用,所以我建议您停止尝试使用它。

其次,鉴于您当前的情况(如您的Update 中所指定),有几种可能的解决方案。最简单的两个是:

  • 运行引导修复。我知道你说你已经尝试过这个,但不清楚你是否尝试过,因为你可以启动 Ubuntu 而不是 Windows 的情况发生了变化。如果没有,值得再次尝试引导修复。
  • 安装我的rEFInd 启动管理器。在 Ubuntu 中安装 Debian 软件包是最简单的方法,尽管先尝试使用 CD-R 或 USB 闪存驱动器版本会更安全一些,并且仅当 CD-R/USB 闪存驱动器版本时才安装 Debian 软件包可以启动您的两个操作系统。与 GRUB 相比,rEFInd 在启动 Windows 方面没有那么挑剔,所以它可能会解决这个问题。

如果这些方法都不能解决您的问题,请为您最新的启动修复运行提供一个新的 URL。


更新:首先,确保禁用安全启动

接下来,您是否可以通过 rEFInd USB 闪存驱动器或 CD-R 映像启动?如果是这样,试试这个:

  1. 引导至 Linux。
  2. 打开终端窗口。
  3. 在终端中,键入sudo efibootmgr以查找您当前的所有引导条目。
  4. 在终端中,键入sudo efibootmgr -b 0000 -B。这将删除Boot0000条目。
  5. 重复第 4 步,替换0000Boot####第 3 步中标识的每个数字。(你启动修复输出表明你有000000010002000400050007000820012002,和2003
  6. 键入sudo efibootmgr -c -p 2 -l "\EFI\ubuntu\grubx64.efi" -L "Ubuntu"。请注意用作目录分隔符的反斜杠。
  7. 如果您在运行上次启动修复后已将 rEFInd 安装到硬盘,请键入sudo efibootmgr -c -p 2 -l "\EFI\refind\refind_x64.efi" -L "rEFInd".
  8. 重启。

如果一切顺利,应该会弹出 rEFInd,或者至少是 GRUB,并且您应该能够引导 Linux 和 Windows。

如果 rEFInd CD-R 或 USB 闪存驱动器不起作用,您可以从以 EFI 模式启动的 Linux live CD 尝试相同的操作。