必须用sudo grub-install重写引导代码到磁盘主引导区才能恢复菜单显示;先用lsblk或fdisk确认系统盘(如/dev/nvme0n1),再挂载EFI分区(sudo mount /dev/nvme0n1p1 /boot/efi),然后执行sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=UOS --recheck /dev/nvme0n1,最后sudo update-grub刷新菜单。

统信UOS开机后直接进入Windows、黑屏、光标闪烁或卡在grub>命令行,说明GRUB引导界面已丢失或被覆盖,必须用sudo grub-install重写引导代码到磁盘主引导区才能恢复菜单显示。
确认系统安装磁盘设备名
打开终端(Ctrl+Alt+T),执行:
lsblk -d -o NAME,MODEL,TRAN,RM | grep -E "nvme|sd"
识别出你的系统盘——通常为/dev/nvme0n1(NVMe固态)或/dev/sda(SATA硬盘)。【此处必须填整块磁盘设备名,如/dev/nvme0n1,绝不能填分区如/dev/nvme0n1p1,否则将导致系统完全无法启动】
若不确定,可再执行sudo fdisk -l | grep "Disk /dev"辅助判断。
挂载EFI系统分区(UEFI模式必需)
统信UOS默认使用UEFI启动,grub-install需访问EFI分区才能写入bootloader文件。若未挂载,命令会静默失败或报错“cannot find EFI directory”。
第一步:查找EFI分区
sudo fdisk -l | grep "EFI System"
第二步:创建挂载点并挂载(以查得的设备名替换示例中的/dev/nvme0n1p1)
sudo mkdir -p /boot/efi → sudo mount /dev/nvme0n1p1 /boot/efi
这一步不做,后续grub-install可能看似成功,但重启后仍无GRUB菜单。
执行sudo grub-install修复引导
方法一:标准修复(推荐)
sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=UOS --recheck /dev/nvme0n1
方法二:简化参数(适用于多数预装UOS的国产整机)
sudo grub-install /dev/nvme0n1
【若系统盘是NVMe,请务必把/dev/sda换成/dev/nvme0n1;填错设备名将覆盖错误磁盘的引导区,可能导致另一系统无法启动】
刷新GRUB配置文件
grub-install只重写引导程序本身,菜单项仍依赖/boot/grub/grub.cfg。必须立即执行:
sudo update-grub
该命令会自动扫描所有内核、探测Windows Boot Manager(前提是EFI分区已正确挂载)、生成最新菜单。终端输出中出现“Found Windows Boot Manager”即表示双系统识别成功。

















