可使用安装iso启动救援环境清除grub密码:挂载原系统、注释/etc/grub.d/00_header中set superusers和password_pbkdf2行、重新生成grub.cfg,重启后即可自由编辑grub。

如果您在启动银河麒麟V10系统时,GRUB引导菜单被密码保护,输入e或c均提示需验证GRUB用户凭证,而您已遗忘该密码,则无法直接编辑启动项进入单用户模式。以下是绕过GRUB密码限制、恢复引导可编辑能力的多种技术路径:
一、使用安装ISO启动救援环境并清除GRUB密码配置
该方法通过外部介质加载独立Linux运行时,挂载原系统根分区,定位并注释掉GRUB密码认证模块,从而彻底移除引导层访问限制。
1、下载与当前系统版本匹配的银河麒麟V10安装ISO镜像(如Halberd或SP1),将其挂载为虚拟光驱或写入U盘/CD-ROM。
2、重启主机,在BIOS/UEFI中将光驱设备设为第一启动项,保存后重启。
3、启动至安装界面后,选择“Troubleshooting” → “Rescue a Kylin Linux Advanced Server system”。
4、等待救援环境初始化完成,出现提示时选择“Continue”以自动尝试挂载本地系统分区。
5、若自动挂载失败,执行lsblk识别根逻辑卷(如/dev/mapper/klas-root),再运行:
mount /dev/mapper/klas-root /mnt/sysimage
6、切换上下文至原系统:
chroot /mnt/sysimage
7、打开GRUB头部配置文件:
vim /etc/grub.d/00_header
8、定位包含set superusers和password_pbkdf2的三行(通常位于文件末尾),在每行开头添加#符号进行注释。
9、重新生成GRUB配置:
grub2-mkconfig -o /boot/grub2/grub.cfg(传统BIOS)
或
grub2-mkconfig -o /boot/efi/EFI/kylin/grub.cfg(UEFI)
10、退出chroot并重启:
exit
reboot -f
二、通过rd.break参数绕过GRUB密码直接进入initramfs调试环境
该方法不依赖GRUB交互权限,而是利用内核启动早期阶段的中断机制,在initramfs中获得对根文件系统的读写控制权,进而修改GRUB配置文件。
1、重启系统,在厂商Logo界面反复按Shift或Esc键,直至GRUB菜单出现。
2、选中默认启动项,按e键——若弹出密码框,立即放弃此操作;若无响应,继续下一步。
3、在linux行末尾删除ro quiet splash等参数,替换为:
rd.break enforcing=0
4、按Ctrl+X或F10启动。系统将停驻于initramfs命令行界面(提示符为switch_root#)。
5、执行以下命令挂载真实根文件系统:
mount -o remount,rw /sysroot
chroot /sysroot
6、编辑GRUB密码配置:
sed -i 's/^set superusers/#set superusers/' /etc/grub.d/00_header
sed -i 's/^password_pbkdf2/#password_pbkdf2/' /etc/grub.d/00_header
7、重新生成GRUB配置文件,命令同上一方法第9步。
8、执行exit两次退出chroot及initramfs,系统将自动继续启动。
三、物理接触前提下重刷GRUB引导程序(适用于UEFI固件锁定场景)
当GRUB密码与UEFI安全启动策略深度绑定,且无法通过软件方式解除时,需借助UEFI Shell工具强制重装纯净GRUB引导模块,覆盖受密码保护的旧引导扇区。
1、准备支持UEFI Shell的启动介质(如rEFInd UEFI USB或麒麟ISO中的Shell选项)。
2、重启进入UEFI固件设置,关闭Secure Boot,并启用“Launch EFI Shell from filesystem device”选项。
3、启动至UEFI Shell后,执行map命令识别ESP分区(通常为FS0:或FS1:)。
4、进入ESP分区:
FS0:
cd EFI\kylin
5、备份原始grubx64.efi:
cp grubx64.efi grubx64.efi.bak
6、从麒麟安装ISO中提取未加密的GRUB EFI二进制文件,复制至当前目录并重命名为grubx64.efi。
7、执行reset重启,系统将以无密码GRUB启动。










