双系统引导失效时,需依次确认uefi模式与efi分区状态、重装grub至efi分区、调整bios启动顺序、使用grub-repair工具修复、手动添加windows引导项。

如果您已完成麒麟操作系统与Windows系统的分别安装,但开机后无法看到双系统引导菜单,或默认直接进入某一系统而无法选择另一系统,则可能是GRUB引导未正确安装或被Windows覆盖。以下是恢复并设置双系统引导的实测操作步骤:
一、确认当前引导模式与EFI分区状态
需先判断系统是否运行在UEFI模式下,并验证EFI系统分区(ESP)是否存在且可访问,这是GRUB正确安装的前提。若ESP分区缺失、损坏或大小不足(小于256MB),将导致引导项无法写入。
1、启动进入麒麟OS(若无法进入,请使用麒麟安装U盘进入Live试用环境)。
2、打开终端,执行命令:sudo fdisk -l | grep -A1 "EFI System",查看是否存在类型为“EFI System”的分区。
3、执行命令:ls /boot/efi/,确认该目录下存在EFI目录结构(如Microsoft/、BOOT/等子目录)。
4、若输出为空或提示“没有那个文件或目录”,说明EFI分区未挂载或不存在,需先通过GParted或gdisk修复分区表并挂载ESP。
二、重新安装GRUB至EFI分区
在麒麟OS中手动重装GRUB引导程序,确保其控制启动流程,并能识别Windows Boot Manager。此操作将重建/boot/efi/EFI/kylinsp1/grubx64.efi等关键文件,并注册到固件启动项中。
1、在终端中执行:sudo mkdir -p /boot/efi/EFI/kylinsp1,创建麒麟专用引导目录。
2、执行:sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=kylinsp1 --recheck,将GRUB写入EFI分区。
3、执行:sudo update-grub,扫描所有操作系统并生成grub.cfg,此时应显示“Found Windows Boot Manager on /dev/nvme0n1p1”等识别信息。
4、重启系统,观察开机时是否出现GRUB菜单;若仍无菜单,需检查BIOS中“Boot Mode”是否为UEFI,且“Secure Boot”已关闭。
三、通过BIOS调整启动顺序强制调用GRUB
当Windows安装后覆盖了默认启动项,UEFI固件可能将“Windows Boot Manager”设为第一启动项,导致跳过GRUB。此时需手动在BIOS中修改启动顺序,使固件优先加载麒麟引导文件。
1、重启电脑,在开机自检画面按Del/F2/F12(依主板而定)进入UEFI BIOS设置界面。
2、进入“Boot”或“Startup”选项卡,查找“Boot Option #1”或“Primary Boot Sequence”项。
3、将启动项由“Windows Boot Manager”更改为kylinsp1或Kylin OS(具体名称取决于grub-install时--bootloader-id参数所设值)。
4、保存设置并退出,重启验证GRUB是否正常弹出。
四、使用grub-repair工具自动修复引导
该方法适用于不熟悉命令行操作的用户,通过图形化前端自动检测并修复GRUB配置及EFI注册项,避免手动误操作风险。
1、在麒麟OS中打开终端,执行:sudo apt update && sudo apt install grub-repair(若源中不可用,则从官方仓库下载deb包安装)。
2、执行:sudo grub-repair,启动图形向导界面。
3、勾选“Repair EFI boot entries”和“Reinstall GRUB to EFI partition”选项。
4、点击“Apply”,等待工具完成扫描、重装与注册全过程。
5、完成后重启,确认GRUB菜单中包含Windows Boot Manager条目。
五、手动添加Windows引导项至GRUB配置
当update-grub未能自动识别Windows引导文件时,可通过编辑GRUB自定义脚本方式,强制注入Windows启动入口,绕过自动探测机制。
1、执行:sudo nano /etc/grub.d/40_custom,打开自定义引导项文件。
2、在文件末尾新增以下内容(请将/dev/nvme0n1p1替换为实际Windows EFI分区设备路径):
menuentry "Windows Boot Manager" {
insmod part_gpt
insmod fat
set root='(hd0,gpt1)'
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
3、保存文件并退出编辑器。
4、执行:sudo update-grub,使新增项生效。











