麒麟OS启动失败、卡在grub rescue>或黑屏,需用Live USB进入救援环境,挂载根分区与EFI/Boot分区,chroot后根据UEFI或Legacy模式执行grub2-install重装引导,并运行grub2-mkconfig重建配置,最后sync确保生效。

麒麟OS系统启动失败、卡在grub rescue>界面或直接黑屏,说明GRUB2引导器已损坏或被覆盖,必须将其重新安装到指定磁盘才能恢复启动能力。该操作不依赖图形界面,全程在终端中完成,需准确识别目标磁盘设备名,否则将导致无法启动。
确认系统引导模式与目标磁盘设备
先判断当前是UEFI还是Legacy BIOS模式,再用lsblk精准定位要写入GRUB2的磁盘(如/dev/sda),【绝不能选错成分区如/dev/sda1,否则MBR将被破坏】。打开终端执行:
sudo lsblk -f
重点看两处:一是挂载点为/boot/efi且文件系统为vfat的分区,它属于UEFI系统;二是根分区(/)所在磁盘的主设备名(如sda),这就是你要重装GRUB2的目标磁盘。
若输出中无/boot/efi挂载,但存在/boot且其所在分区格式为ext4,则大概率是Legacy BIOS模式,目标磁盘仍是/dev/sda这类整盘设备名。
挂载原系统并切换至chroot环境
这一步把故障系统的根目录和引导相关分区挂载进Live救援环境,让后续命令真正作用于原系统。
执行以下命令(请将/dev/sda2和/dev/sda1替换为你实际的根分区和EFI/Boot分区):
sudo mkdir -p /mnt/sysroot
sudo mount /dev/sda2 /mnt/sysroot
sudo mount /dev/sda1 /mnt/sysroot/boot/efi (UEFI)
或
sudo mount /dev/sda1 /mnt/sysroot/boot (Legacy)
接着绑定运行时必需的虚拟文件系统:
sudo mount --bind /dev /mnt/sysroot/dev
sudo mount --bind /proc /mnt/sysroot/proc
sudo mount --bind /sys /mnt/sysroot/sys
sudo mount --bind /run /mnt/sysroot/run
最后进入原系统上下文:
sudo chroot /mnt/sysroot
根据引导类型执行GRUB2重装
方法一:UEFI模式下重装至EFI系统分区
运行:
grub2-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=KylinOS --recheck
该命令会把grubx64.efi写入/boot/efi/EFI/KylinOS/目录,并向UEFI固件注册启动项。若提示“EFI variables are not supported on this system”,说明当前Live环境未以UEFI方式启动,请重启并确保从UEFI USB启动。
方法二:Legacy BIOS模式下重装至磁盘MBR
运行:
grub2-install /dev/sda
【目标必须是/dev/sda这样的磁盘设备,写成/dev/sda1会彻底损坏MBR】
重建GRUB2启动菜单配置
第一步:检查内核文件是否存在
执行ls /boot/vmlinuz-*和ls /boot/initramfs-*.img,若无任何输出,说明内核丢失,需先从ISO镜像补全,本步骤暂停。
第二步:生成最新grub.cfg
执行:
grub2-mkconfig -o /boot/grub2/grub.cfg
对UEFI用户,也可写入EFI路径:
grub2-mkconfig -o /boot/efi/EFI/KylinOS/grub.cfg
第三步:强制刷写磁盘缓存
sync

















