Windows 8 删除 Grub 作为默认启动管理器

Kou*_*ros 39 dual-boot vaio uefi windows-8

我有一个预装了 Windows 8 的 Sony VAIO S 系列,我在新分区上安装了 Ubuntu 12.10。当 PC 启动 Grub 时,我可以在 Windows 8(一开始不起作用,不得不更改 Grub 设置)和 Ubuntu 12.10 之间进行选择。当我选择 Ubuntu 12.10 时一切正常,但是当我使用 Windows 8 并重新启动时 Grub 不再显示(Windows 8 立即启动)。

我启动了一个 Ubuntu 12.10 LiveUSB,使用了efibootmgr,发现 Windows 8(每次启动时)将 EFI 默认引导加载程序从 Grub 更改为 Windows 引导管理器。

如何在 Windows 8 中更改此设置?我读了一些关于bcdedit,但它不起作用或我不知道如何使用它...

Rod*_*ith 37

我不能做出任何承诺,但请从以管理员权限启动的 Windows 命令提示符窗口中尝试此操作:

bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi
Run Code Online (Sandbox Code Playgroud)

请注意,{bootmgr}应准确键入;这不是一个变量。如果这不起作用,您可以在 Linux 中尝试此操作:

  1. 备份/boot/efi(您的 EFI 系统分区或 ESP)的全部内容。
  2. 键入sudo mv /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi /boot/efi/EFI/Microsoft
  3. 键入cp /boot/efi/EFI/ubuntu/grubx64.efi /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi
  4. 创建一个新的/etc/grub.d/40_custom文件条目,引用EFI/Microsoft/bootmgfw.efi. 在/boot/grub/grub.cfg引用的现有条目之后对其进行建模EFI/Microsoft/Boot/bootmgfw.efi;只需Boot从引导路径中删除并为该条目指定一个新名称。
  5. 键入sudo update-grub以安装新的 GRUB 条目。

当您重新启动时,GRUB 应该会出现。问题在于,如果/当 Windows 决定重新安装其引导加载程序时,系统将再次开始直接引导至 Windows。

对于第 4 步,您可以:

  1. 复制40_custommenuentry 'Windows ...'位于一组### BEGIN <path> ###### END <path> ###标签/评论之间开头的条目。这是包含路径的条目Boot
  2. 创建文件的新条目/etc/grub.d/40_custom加入复制menuentry
  3. 更改新条目的名称(原始名称Windows Boot Manager或类似名称)。
  4. 将路径从 更改EFI/Microsoft/Boot/bootmgfw.efiEFI/Microsoft/bootmgfw.efi

编辑:

自从写下这个答案后,我开始意识到一个名为EasyUEFI的第三方 Windows 工具它是一个比bcdedit从 Windows 调整 EFI 引导顺序更简单的 GUI 工具。我不知道 EasyUEFI 是否会阻止 Windows 进行更改,但是,如果 Windows 习惯于在每次启动时将自己设置为默认值。因此,bcdedit可能仍然需要,但 EasyUEFI 也绝对值得一试。

  • 你会考虑帮我/我们一个忙,给我们第 4 步的具体终端提示吗?除了那一步,我做了所有其他的事情,因为我不确定要输入什么命令。Grub 现在可以工作,但它不会让我启动到 Windows。哎呀! (5认同)