解决双引导问题:Windows 未显示在 GRUB 菜单中

解决双引导问题:Windows 未显示在 GRUB 菜单中

我最近在 Debian 12 系统上遇到了双启动问题,在 Debian 更新后,Windows 10 没有显示在 GRUB 菜单中。我花了一些时间来解决这个问题并能够解决它。我想分享我的经验,以防其他人遇到类似的问题。

问题描述:Debian 更新后,我的 GRUB 引导加载程序不再显示引导至 Windows 10 的选项。最初,我认为我的 Windows 分区位于 /dev/sda2,但结果是位于 /dev/sda1。

答案1

对我来说,最近当我将grub2包从版本升级2.06-132.06-13+deb12u1.解决方案是取消注释此行/etc/default/grub

GRUB_DISABLE_OS_PROBER=false

然后运行sudo update-grub让 GRUB 扫描 Windows 10。这样我就不需要在/etc/grub.d/.

注意:此更新可能与最近的安全更新有关:https://www.debian.org/security/2022/dsa-5280

答案2

解决方案:

  1. 验证 Windows 分区:要确认 Windows 分区的位置,您可以使用lsblk或等命令fdisk -l。就我而言,它是/dev/sda1。

  2. 更新自定义 GRUB 条目:我在文件中添加了适用于 Windows 的自定义 GRUB 菜单条目/etc/grub.d/40_custom。它看起来是这样的:

menuentry "Windows 10" {
    insmod ntfs
    set root=(hd0,1)  # Modify this to match your Windows partition
    chainloader +1
}

确保替换(hd0,1)为适合您的 Windows 安装的分区信息。

  1. 启用os-prober:在/etc/default/grub文件中,确保将GRUB_DISABLE_OS_PROBER设置设置false为启用对其他可引导分区的自动检测。

  2. 更新 GRUB:运行sudo update-grub以重新生成 GRUB 配置。

执行这些步骤后,我的 GRUB 菜单显示“Windows 10”选项,使我能够成功启动到 Windows 10。

结论:如果您遇到 Windows 未显示在 GRUB 菜单中的类似问题,请考虑检查 Windows 分区位置、配置自定义 GRUB 条目并启用os-prober.这应该可以帮助您解决问题并恢复双引导功能。

我希望这篇文章可以帮助其他可能面临同样问题的人,如果您有任何疑问或需要进一步的帮助,请随时询问。

相关内容