Windows 8 更改启动顺序

Windows 8 更改启动顺序

我在 UEFI 模式下在 3TB GPT 磁盘上安装了 Windows 8 和 Ubuntu 12.10。

两者都可以正常启动。

两个操作系统都在 UEFI 启动菜单中创建了自己的条目,其中有“ubuntu”和“Windows 8”条目。

可以在主板的 UEFI 设置中更改启动顺序。

我想首先启动“ubuntu”,因为我设置了 GRUB 2 以便能够启动两个系统。

但是每当我启动 Windows 8 时,它都会更改启动顺序,以便首先启动。

我该如何预防?

多谢。

- 更新 -

我了解到 bcdedit.exe 可用于操作 Windows 中的启动配置数据。

这很重要,因为 Windows 将 BCD 与存储启动顺序的启动 NVRAM 同步。

每次触碰 BCD 中的 {fwbootmgr} 条目时,NVRAM 都会被覆盖。

我修改了此条目以首先加载 GRUB 2,并且确实如此。但是,在启动 Windows 8 后,NVRAMBCD中的{fwbootmgr}恢复原来的顺序,即先启动Windows 8。

我对此确实感到困惑。

-- 更新 2 --

我设法通过在 Windows 的组策略编辑器中创建启动脚本来解决这个问题。启动脚本发出“bcdedit /set {fwbootmgr} DEFAULT {appropriate UUID}”命令。这是一个大问题,绝对不是我想要的解决方案。我希望 Windows 在 NVRAM 中排在 GRUB 之后,排名第二。

那么我该怎么做呢?

答案1

微软的一位代表在他们的官方论坛上回答了我的问题。他们说这确实是正常现象。

我通过在每次系统启动时运行 .bat 文件解决了该问题。该文件执行以下操作:

bcdedit /set {fwbootmgr} DEFAULT {appropriate UUID}

其中“适当的 UUID”是 GRUB 中的 UUID,可以从“bcedit /enum firmware”列表中读取。

可以通过打开组策略编辑器(在 metro 中查找)来编辑 bat 文件。

我写了一篇有关双启动问题的文章:http://tlfabian.blogspot.hu/2013/01/converting-dual-boot-mbr-partitioned.html

答案2

不保证,但可以在 Windows 中尝试此操作:

bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi

如果您尚未禁用安全启动,则需要更改grubx64.efishim.efi

如果这不起作用,请向微软投诉,或将其从双启动状态中移除并在虚拟机中运行它。

相关内容