我最近在 Debian 12 系统上遇到了双启动问题,在 Debian 更新后,Windows 10 没有显示在 GRUB 菜单中。我花了一些时间来解决这个问题并能够解决它。我想分享我的经验,以防其他人遇到类似的问题。
问题描述:Debian 更新后,我的 GRUB 引导加载程序不再显示引导至 Windows 10 的选项。最初,我认为我的 Windows 分区位于 /dev/sda2,但结果是位于 /dev/sda1。
答案1
对我来说,最近当我将grub2
包从版本升级2.06-13
到2.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
解决方案:
验证 Windows 分区:要确认 Windows 分区的位置,您可以使用
lsblk
或等命令fdisk -l
。就我而言,它是/dev/sda1。更新自定义 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 安装的分区信息。
启用
os-prober
:在/etc/default/grub
文件中,确保将GRUB_DISABLE_OS_PROBER
设置设置false
为启用对其他可引导分区的自动检测。更新 GRUB:运行
sudo update-grub
以重新生成 GRUB 配置。
执行这些步骤后,我的 GRUB 菜单显示“Windows 10”选项,使我能够成功启动到 Windows 10。
结论:如果您遇到 Windows 未显示在 GRUB 菜单中的类似问题,请考虑检查 Windows 分区位置、配置自定义 GRUB 条目并启用os-prober
.这应该可以帮助您解决问题并恢复双引导功能。
我希望这篇文章可以帮助其他可能面临同样问题的人,如果您有任何疑问或需要进一步的帮助,请随时询问。