应先启用os-prober并挂载efi分区,再执行update-grub扫描windows boot manager;若无效则用livecd chroot重装grub-efi。具体包括:echo "grub_disable_os_prober=false" | sudo tee -a /etc/default/grub,sudo fdisk -l | grep "efi system"定位分区,sudo mount /dev/nvme0n1p1 /mnt/efi后sudo update-grub;仍失败则livecd中chroot执行update-grub和grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=uos --recheck。

统信UOS系统更新后,GRUB启动菜单中Windows选项突然消失,开机直接进入UOS或卡在纯黑屏,说明update-grub未扫描到Windows Boot Manager——这通常不是引导文件被删,而是os-prober探测机制被禁用或EFI分区未挂载所致,必须针对性修复。
先确认是否真丢了Windows启动项
打开终端,执行:
sudo update-grub
观察输出末尾几行:若出现“Found Windows Boot Manager on /dev/nvme0n1p1”字样,说明Windows已被识别,只是菜单未刷新成功,重启即可;若全程无任何Windows相关提示,且你确认机器是UEFI+双系统(非Legacy BIOS),则必须继续下一步。
启用os-prober并挂载EFI分区
方法一:一行命令强制启用探测器
echo "GRUB_DISABLE_OS_PROBER=false" | sudo tee -a /etc/default/grub
方法二:手动挂载EFI分区(关键步骤)
① 查找EFI分区位置:sudo fdisk -l | grep "EFI System"
② 假设输出为/dev/nvme0n1p1,则执行:
sudo mkdir -p /mnt/efi && sudo mount /dev/nvme0n1p1 /mnt/efi
③ 再次运行:sudo update-grub
通过 SSH 隧道从 Android 设备在互联网上对 Windows PC 实现完整远程控制的设置与使用指南,适用于远程桌面访问、安全 RDP 等。
注意:挂载点/mnt/efi必须真实存在且可读,否则os-prober连/bootmgfw.efi的路径都访问不到,Windows条目永远无法生成。
精简内核后强制重扫
旧内核残留可能干扰os-prober初始化流程。执行:
dpkg -l | grep linux-image | grep -v "$(uname -r)" | awk '{print $2}' | xargs sudo apt purge -y
该命令会卸载所有非当前运行版本的linux-image包,清理完成后立即执行:
sudo update-grub
此时os-prober会在干净环境中重新遍历/mnt/efi/EFI/Microsoft/Boot/,大概率输出Windows识别日志。
终极方案:LiveCD环境下chroot重装
若以上三步均无效,说明/boot/efi挂载异常或GRUB-EFI未正确注册至固件NVRAM。
① 用统信UOS LiveUSB启动,打开终端
② 执行lsblk -f,确认EFI分区(vfat格式、100–500MB)、根分区(如/dev/nvme0n1p5)
③ 依次执行:
sudo mount /dev/nvme0n1p5 /mnt → sudo mount /dev/nvme0n1p1 /mnt/boot/efi → sudo mount --bind /dev /mnt/dev → sudo mount --bind /proc /mnt/proc → sudo mount --bind /sys /mnt/sys
④ 进入原系统:sudo chroot /mnt
⑤ 在chroot中执行:
update-grub → grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=UOS --recheck










