Ubuntu 和 Windows 8 启动问题(SSD uefi)

Ubuntu 和 Windows 8 启动问题(SSD uefi)

我希望有人能帮助我,因为我不知道还能做什么!我有一台戴尔 XPS 15z,有 1TB 硬盘和 128GB 固态硬盘。它自带安装在固态硬盘上的 Windows 8。我做的第一件事是在固态硬盘上安装 ubuntu 12.10,但安装程序找不到 Windows 8,所以大约一个月后我的电脑只能启动到 Ubuntu。我没有遇到任何问题,因为目前我没有使用 Windows(但我希望有一天能拥有它)。

所以一切都很正常,直到今天我在 Ubuntu 上运行软件更新,重启后我的电脑就进入了 Windows 8,现在我无法回到 Ubuntu。

有什么建议吗?谢谢

编辑:

我只需在开机时按 F12 并进入启动选项即可进入 Ubuntu。我可以看到 Windows 8 和 Ubuntu(以及 Ubuntu 的交换,我想)。也许从 ubuntu 可以更轻松地修复此问题?

然后我去下载了启动修复应用程序: 引导修复检查 http://paste.ubuntu.com/5577728/

然后我相信了启动修复应用程序,在所谓的“修复”之后,它给了我这份报告 http://paste.ubuntu.com/5577739/重启后我得到了这个:

重启后我收到类似以下消息

启动时截图

无法打开 /efi/Microsoft/boot/grubx64

无法加载 grub

无法打开 /efi/boot/grubx64.efi

无法加载 grub

检查媒体[media]

检查媒体

几秒钟后,系统进入 grub 菜单,其中只有 Ubuntu 选项可用。其他选项均无效。

屏幕截图 grub 菜单

谢谢!希望有人能帮助我!

答案1

GRUB 正在加载到您的计算机上;但它没有显示菜单,因为它认为没有可用的选项。据我了解,您现在回到了与原始状态几乎完全相同的状态 - 您可以启动 Linux,但不能启动 Windows。唯一的区别是,现在您有了 GRUB 启动菜单。如果我误解了,请澄清。

不幸的是,启动 Windows 并不是 GRUB 的强项。网上有很多建议的 GRUB 配置,但它们经常会失败 —— 在一个系统上有效的在另一个系统上却会失败。我手头上有一个这样的配置:

menuentry "Windows 8" {
    insmod part_gpt
    insmod chain
    set root='(hd0,gpt1)'
    chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}

您需要将其输入到/etc/grub.d/40_custom然后运行sudo update-grub以使其可用。请注意,您可能需要更改set root=行和/或引导chainloader加载程序的行。由于您已经运行了 Boot Repair,因此该chainloader行需要引用 Windows 引导加载程序的新的文件名(可能是bkpbootmgfw.efi)。

另一个选择是安装我的rEFInd 启动管理器,这在启动 Windows 时往往更可靠。不幸的是,您运行了 Boot Repair,这使情况变得复杂,因为 Boot Repair 会移动并重命名 Windows 引导加载程序,并将 GRUB 复制到旧的 Windows 引导加载程序位置。因此,您可能需要将其改回原样,可以手动更改,也可以重新运行 Boot Repair 并选择撤消其更改的选项。

无论使用哪种解决方案,你可能需要禁用固件中的安全启动,或者安装更新版本的垫片。前者可能更容易,但我不能确切地说出如何操作,因为每个 EFI 都不一样。后一种选择更棘手,也更复杂。参见rEFInd shim 文档有关如何使用 rEFInd 执行此操作的详细信息。

相关内容