无法在 Ubuntu 双启动中加载 Windows 8

无法在 Ubuntu 双启动中加载 Windows 8

我安装了 Ubuntu 14.04 和 Windows 8(来自 Win8),作为双启动。安装过程顺利,没有任何问题。

当我打开笔记本电脑时,它会打开 GRUB 菜单:

  • Ubuntu
  • Ubuntu 的高级选项
  • Windows 8(加载程序)(在 /dev/sda1 上)

Ubuntu 加载没有任何问题,但是当我选择 Windows 8 时,我总是回到 GRUB 菜单。我重新安装了 GRUB,但什么也没改变。

我检查了 BIOS,发现启动模式是 LEGACY。当我将其切换为 UEFI、保存并退出时,我收到以下消息:

“默认启动设备丢失或启动失败。插入恢复媒体并按任意键。然后选择‘启动管理器’来选择新的启动设备或启动恢复媒体”。

收到此消息后,当我重新启动笔记本电脑时,我回到 LEGACY 模式并返回起点:Ubuntu 正在加载,Windows 没有加载。

那么。有什么建议可以解决这个问题吗?

这是 pastebin:http://paste.ubuntu.com/13397045/

非常感谢你的帮助

最好的

答案1

以下是 Boot Repair 输出中的一些关键点(无顺序):

/dev/sda1    *          2,048   669,571,071   669,569,024   7 NTFS / exFAT / HPFS

换句话说,Windows 已打开/dev/sda1。还有其他几行可以证实这一点,包括接下来的几行,它们由于其他原因而很重要……

sda1: __________________________________________________________________________

    File system:       ntfs
    Boot sector type:  Grub2 (v1.99-2.00)

换句话说,GRUB 安装在/dev/sda1Windows 分区的引导扇区中。这充其量是极不正常的,而且确实是问题的根源;但要完成循环,可以说……

menuentry 'Windows 8 (loader) (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-B6F60302F602C29B' {
    insmod part_msdos
    insmod ntfs
    set root='hd0,msdos1'

GRUB 配置的这一片段确认 GRUB 正在尝试启动 Windows 上的引导加载程序/dev/sda1hd0,msdos1用 GRUB 的说法)。通常这会起作用,但由于该分区保存的是 GRUB 而不是 Windows 引导加载程序,因此您最终会陷入您描述的无限循环。

出现此问题的原因可能是您在某个时候告诉 Ubuntu 安装 GRUB /dev/sda1。这是一个错误,但如果您通过 Ubuntu 安装程序执行此操作,则安装程序接受此位置可能存在错误,它可以(并且应该)将其检测为无效选项并拒绝接受,或者至少警告您存在危险。如果您认为发生了这种情况,您应该提交错误报告鼓励做出改变,以防止这种事情将来发生在别人身上(或你自己身上!)。

至于修复它,恐怕您必须使用 Windows 工具来完成这项工作。我不是以这种方式修复 Windows 的专家,所以除非有人能提供详细信息,否则您最好在 Windows 论坛上发帖。关键是您需要恢复第一个分区的分区引导记录 (PBR)。理想情况下,您不想触碰主引导记录 (MBR);但是,您的 Windows 修复很有可能会替换 MBR 和 PBR。如果发生这种情况,您需要再次运行 Boot Repair 以将 GRUB 重新安装到 MBR。

相关内容