双启动 Ubuntu 和 Windows 8(仅从“Windows 启动 UEFI 恢复”启动)

双启动 Ubuntu 和 Windows 8(仅从“Windows 启动 UEFI 恢复”启动)

昨天我终于能够在预装 Windows 8(64 位)的 Lenovo Ideapad Z500 上安装 ubuntu 12.04.3(64 位)(如果这有帮助的话)。我只会解释我现在遇到的问题,如果您需要更多信息,请问我(例如我安装 Ubuntu 所遵循的步骤等)。所以我启动了计算机(UEFI Bios、SecureBoot 已禁用、Windows 8 上的快速启动已禁用)并且 GRUB 正确显示(我已经运行 BootRepair 来实现这一点),然后如果我选择 Ubuntu,它会正确加载。问题是当我选择 Windows 8 时我收到此错误:

unknow command `drivemap'
invalid EFI file path

此外,在 GRUB 中,我看到 2 个 Ubuntu 启动选项与许多 Windows 选项并排出现,我刚刚发现单击其中一个:“Windows 启动 UEFI 恢复”实际上可以像往常一样启动我的 Windows 8。因此,我实际上有一个可以正常工作的双启动,但我必须选择上述“Windows 启动 UEFI 恢复”选项才能正确启动 Windows 8,而不是选择“Windows 8(加载器)”(这不会启动 Windows 8,只会显示驱动器映射错误)。有什么办法可以解决这个问题吗?提前谢谢!

干杯,亚历杭德罗。

PS: BootRepair 生成的 BootInfo 可以在这里找到http://paste.ubuntu.com/6294680

答案1

您最初是在 BIOS 模式下安装 Ubuntu 的,因为您的保护性 MBR 中有 grub。但是 Boot-Repair 通过卸载 BIOS 的 grub-pc 并安装 UEFI 的 grub-efi 将您的安装转换为 UEFI。

Boot-Repair 还在 25_custom 中添加了 Windows 的启动条目,如果标题不正确,您可以手动编辑这些条目。它必须添加新条目,因为 grub 有一个错误,即使对于 UEFI 系统也只创建 BIOS 启动条目。新的 13.10 有一个修复的 grub2 os-prober,可以正确执行此操作。

gksudo gedit /etc/grub.d/25_custom

Boot-Repair 还对 Windows 文件名进行了重命名。Rod Smith 称其为 hack,我认为这是解决 BIOS 缺陷的一种变通方法,但我认为 Boot-Repair 可能会在不需要时运行它。但我们不知道您的 UEFI 是否允许从 UEFI 启动 Ubuntu。重命名适用于仅启动 Windows 的 UEFI。因此,它将具有 Microsoft 签名密钥的 grub2 的 shim 文件重命名为 Windows 文件名,然后您从名称开头为 bkp 的 grub 菜单启动 Windows efi 文件。

如果您想撤消重命名。但是如果您无法启动,则可能需要再次添加重命名。最好对 efi 分区进行完整备份。

要撤消并将文件重命名为原始名称,只需勾选 Boot-Repair 的“恢复 EFI 备份”选项。

答案2

最简单、最安全的解决方案是忽略“Windows 8(加载器)” GRUB 条目并只使用有效的条目。

如果这让你不爽,你可以尝试调整你的 GRUB 菜单条目。不幸的是,这比它应该的要复杂得多。在 Google 上搜索“调整 GRUB 2 条目”这样的短语,会产生大约数不清的有关此主题的信息,但我还没有深入阅读它们,无法推荐任何特定的网站。有一个名为 GRUB Customizer 的 GUI 工具可以简化问题,但我从未使用过它,所以我无法评论它的效果如何。

另一个选择是完全放弃 GRUB。特别是我的rEFInd 启动管理器手动配置起来容易得多;然而,当你第一次安装它时,它可能会更多的,不是更少的无关条目。如果要删除它们,您需要删除/boot/efi/EFI/*/和/或/boot目录中的文件,或使用配置文件中的dont_scan_files和选项将启动文件排除在菜单之外。dont_scan_dirsrefind.conf

相关内容