请求协助恢复Grub启动菜单中的Windows 8选项
恢复Grub菜单中的Windows 8启动选项
别担心,这种Grub丢失Windows启动项的情况很常见,多半是Grub配置未更新、Windows启动分区变动或者系统更新后触发的。我给你两种解决思路,先从最简单的自动修复开始尝试:
方法一:让Grub自动检测并恢复Windows 8选项
Grub自带了自动扫描系统启动项的工具,大部分情况下运行这个命令就能解决问题:
- 打开终端(按下
Ctrl+Alt+T快速调出) - 输入以下命令并回车(需要管理员权限,输入密码时屏幕不会显示,正常输入即可):
sudo update-grub - 命令执行完成后,重启电脑,查看Grub菜单是否已经恢复Windows 8选项。
如果自动检测没生效,那就需要手动添加启动项,步骤如下:
方法二:手动添加Windows 8启动项到Grub
第一步:找到Windows 8的启动分区
先确定Windows所在的分区位置,运行以下命令查看磁盘分区信息:
sudo lsblk -f
在输出结果里找带有ntfs文件系统,且标注有boot或esp标签的分区,比如/dev/sda1或者/dev/nvme0n1p1,记下来这个分区路径。
第二步:编辑Grub自定义配置文件
打开Grub的自定义配置文件,这个文件不会被系统更新覆盖,适合添加自定义启动项:
sudo nano /etc/grub.d/40_custom
在文件的末尾添加对应你系统启动模式的代码:
如果是BIOS/MBR模式(传统启动):
menuentry "Windows 8" { set root=(hd0,1) chainloader +1 }
注意:把(hd0,1)换成你的实际分区,hd0代表第一个磁盘,1代表第一个分区。比如Windows在第二个磁盘的第三个分区,就写成(hd1,3)。
如果是UEFI模式:
menuentry "Windows 8" { insmod part_gpt insmod fat set root='hd0,gpt1' chainloader /EFI/Microsoft/Boot/bootmgfw.efi }
同样,把hd0,gpt1换成你的EFI分区对应的位置,比如hd1,gpt2。
第三步:保存配置并更新Grub
在nano编辑器里,按下Ctrl+O保存文件,按回车确认,再按Ctrl+X退出编辑器。然后再次运行更新命令:
sudo update-grub
重启电脑后,Grub菜单里应该就能看到Windows 8的启动选项了。
额外注意事项
- 如果是UEFI系统,确保BIOS/UEFI设置里的Secure Boot处于关闭状态,否则可能会影响Grub识别Windows启动项。
- 如果你的磁盘分区最近有过调整(比如扩容、分区删除),可能需要先确认Windows分区是否正常可访问,再进行上述操作。
内容的提问来源于stack exchange,提问作者Huston Rendell




