在 Grub Bootloader 中恢复 Windows 10 启动选项

在 Grub Bootloader 中恢复 Windows 10 启动选项

我已经同时运行 Windows 10 和 Ubuntu 16.04 有一段时间了。我可以用 Grub 引导程序启动任一操作系统。不幸的是,我的 Windows 10 安装坏了,我需要重新安装它。

重新安装 Windows 10 后,我无法再使用 Grub 引导程序启动它。因此,我使用可启动的 Windows USB 执行以下命令以重新获得对 Windows 的访问权限:

bootrec.exe /fixmbr
bootrec.exe /fixboot  
bootrec.exe /rebuildbcd 

之后,我曾经easyBCD为 Windows 10 和 Ubuntu 创建了一个新的 Bootloader 菜单。这让它再次正常工作。我现在要做的是使用 Windows 10 启动菜单来选择 Windows 10 或 Ubuntu,如果我选择 Windows 10,它会直接将我送入操作系统。但是,如果我选择 Ubuntu,我会被发送到 Grub 引导加载程序,其中包含指向我旧的 Windows 10 的损坏链接。选择 Ubuntu 会将我引导到 Ubuntu 操作系统。

我想要实现的是再次将所有内容置于 Grub Bootloader 下,但我对这里发生的事情感到非常困惑,所以我希望有人能帮助我。

以下是我当前的分区:在此处输入图片描述

编辑:当我尝试在 Grub Customizer 中保存时,它似乎Grub Customizer被删除了/etc/grub.d/40_custom。当我在原始文件中添加这些行并将其保存在那里时,启动选项不会显示在 Grub Customizer 中。

答案1

尝试此解决方法

执行以下命令:-

/etc/grub.d/

gedit 40_custom

在 40_custom 文件中添加以下行:

menuentry "Windows 10" {
  set root='(hd0,1)'
  chainloader +1
}

如果失败了,请尝试这个:

menuentry "Windows 10" {
      set root='(hd0,msdos1)'
      chainloader +1
    }

编辑保存文件后并运行以下命令:

grub2-mkconfig -o /boot/grub2/grub.cfg 

它在主配置文件中添加窗口条目。

然后输入:

reboot

答案2

尝试os-prober。由于您已安装了另一个引导程序,因此您还需要重新安装 GRUB。运行以下命令来安装os-prober和更新您的 GRUB 配置:

sudo apt-get update
sudo apt-get install os-prober
sudo grub-install /dev/sda
sudo update-grub

现在重新启动,你的 GRUB 菜单应该已经修复!

答案3

看来 grub 成功找到了 Windows EFI 加载程序,然后停止添加一个启动项,但该启动项链接到无效的(旧的)Windows 安装。

您能否找出 Windows 启动管理器现在在哪种模式下工作,即 UEFI 还是 Legacy?因为 grub 可能已检测并使用 (旧) EFI 映像,而不是进一步探测另一个 Legacy 替代方案。

PS 假设你想从任一启动管理器启动任一操作系统,更公平的方法是使用第三方启动管理器。rEFInd 是一个不错的选择。它足够稳定和强大,可以处理由于任一方系统更新而可能出现的变化。

相关内容