Windows 7 无法在包含 Windows 8(消费者预览版)、Windows 7 和 Ubuntu 的三重启动系统中正确启动

Windows 7 无法在包含 Windows 8(消费者预览版)、Windows 7 和 Ubuntu 的三重启动系统中正确启动

我的笔记本电脑上目前有 Win7、Win8(消费者预览版)和 Ubuntu 12.04。我在启动 Win7 时遇到了问题

当我启动计算机时,我看到的第一个屏幕是 GRUB 启动管理器屏幕,其中包含 Ubuntu 和 Windows 8 的菜单项。如果我想启动到 Windows 7,我必须选择 Windows 8 加载器,然后从 Windows 启动菜单中选择 Windoes 7。

由于 Win8 加载程序有点愚蠢,它会重新启动 PC 以加载 Win7,但它只是将我带回到 GRUB2,我必须再次选择 Win8 加载程序,然后 Win7 才会启动。这很冗长且没有必要。

如果我可以将 Windows 7 添加到 GRUB 菜单并从那里选择它,而不是启动 Windows 8、选择 Windows 7,然后再次重新启动,我会更加喜欢。

我唯一担心的是 Windows 8 已经删除/替换了 Win7 引导加载程序。

有人遇到过这个问题吗?

答案1

在目录中创建条目40_custom(不删除任何内容)/etc/grub.d

gksudo gedit /etc/grub.d/40_custom 

添加这样的条目

menuentry "Windows 7" {
    set root=(hd0,3)
    chainloader +1
}

当然要修改设置的根值。通过键入以下内容确定硬盘:sudo fdisk -l。例如,如果 /dev/sda1 位于第二个硬盘上,则为 (hd0,1):/dev/sdb1 >> (hd1,1)...等等。我想您可以从中理解语法。进行修改后,执行sudo update-grub并尝试启动它。顺便说一句,grub 实际上无法启动 Windows,它唯一能做的就是链式加载(调用)Windows 引导加载程序。

答案2

在 W8 加载程序中,转到选项,并将默认启动更改为 W7。然后启动 W7 一次并重新启动。然后您的 grub 安装应该能够看到两者。对我来说很有效。

答案3

我不知道 Windows 8 发生了什么。我按照您描述的方式安装了三个操作系统的虚拟机,结果也发生了同样的情况。应该不是发生了。我无法解释为什么会发生。但它确实发生了。

我可以在我的虚拟机中改变这种行为的方法是安装易BCD(在 Windows 7 中)然后更新/保存 Windows 启动菜单。(见下面的屏幕截图。)

EasyBCD“编辑启动菜单”窗口的图像,其中“保存设置”被圈出

就我而言,仅仅“更新“使用 EasyBCD 的 Windows 启动菜单...即使不更改菜单中的任何内容...也删除了 Windows 8 菜单和怪异之处。执行此操作后,当我Windows 8在 GRUB 启动菜单中选择条目时,将显示下面屏幕截图中显示的 Windows 启动菜单的旧样式。现在选择 Windows 7 可以直接启动 Win 7,而无需重新启动回到 GRUB。

文本图形 Windows 启动菜单的屏幕截图

相关内容