应先验证uefi模式并挂载efi分区,再启用os-prober、执行update-grub扫描windows boot manager,最后调整grub默认项确保生效。

统信UOS安装后开机只能进入UOS、GRUB菜单中虽显示Windows选项却点击无响应或卡在星空界面,说明引导链未正确指向Windows Boot Manager的EFI可执行文件,需分层定位并修复。
确认当前启动模式与EFI分区状态
先验证系统是否运行于UEFI模式:在UOS终端中执行 ls /sys/firmware/efi,若返回“目录不存在”,则整机实际以Legacy BIOS启动,此时双系统引导必然失败,必须重启进BIOS关闭CSM并设为UEFI Only模式。
接着检查EFI系统分区是否已挂载:运行 mount | grep -i efi,正常应输出类似 /dev/nvme0n1p1 on /boot/efi type vfat 的行。若无输出,或挂载点是 /boot 而非 /boot/efi,说明UOS安装时未正确复用Windows的ESP,后续update-grub将完全失效。
强制扫描并更新GRUB配置
打开终端,执行:
sudo update-grub
观察输出末尾是否出现 Found Windows Boot Manager on /dev/nvme0n1p1 字样。有此提示且路径与上一步查到的EFI分区设备名一致,说明识别成功;若无该行,直接进入下一阶段。
这一步操作起来很简单,但它是整个修复流程的开关——只有os-prober成功读取到 /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi,GRUB才会生成有效条目。跳过此步或静默失败即意味着后续所有操作都只是徒劳。
手动挂载EFI分区后重试扫描
第一步:列出所有EFI系统分区
sudo fdisk -l | grep "EFI System"
第二步:创建挂载点并挂载(以实际查出的设备名为准,例如/dev/sda1)
sudo mkdir -p /mnt/efi
sudo mount /dev/sda1 /mnt/efi
第三步:再次执行扫描
sudo update-grub
注意:挂载必须使用FAT32格式的原始EFI分区,不能是Windows的C盘或恢复分区。挂错设备会导致bootmgfw.efi无法被定位,GRUB仍将跳过Windows。
启用os-prober并重新生成配置
方法一:临时启用探测工具
编辑配置文件:
sudo nano /etc/default/grub
在文件末尾新增一行:
GRUB_DISABLE_OS_PROBER=false
保存后执行:
sudo update-grub
方法二:若nano不可用,可用sed命令一键写入:
echo "GRUB_DISABLE_OS_PROBER=false" | sudo tee -a /etc/default/grub
sudo update-grub
UOS 2023.1+版本默认禁用os-prober,这是导致update-grub静默跳过Windows的最常见原因。不修改此项,即使EFI分区已正确挂载,扫描也会直接忽略Microsoft目录。
调整GRUB默认项与超时设置
第一步:确认Windows启动项名称
执行:
grep menuentry /boot/grub/grub.cfg | grep Windows
输出类似:
menuentry 'Windows Boot Manager (on /dev/nvme0n1p1)' ...
第二步:将该完整名称填入GRUB配置
编辑:
sudo nano /etc/default/grub
修改:
GRUB_DEFAULT="Windows Boot Manager (on /dev/nvme0n1p1)"
并确保:
GRUB_TIMEOUT=10
GRUB_TIMEOUT_STYLE=menu
第三步:应用更改
sudo update-grub
这一步不是必须,但能立即验证Windows条目是否真正生效——若修改后重启仍直入UOS,说明前四步中某处未到位,需回溯排查。











