centos7 删除grub2 开头的所有文件后故障修复
环境:centos7 mini
故障原因:删除根目录,/boot以及/boot/efi下递归查找到的所有grub2 开头的文件
现象:无法正常开机,开机显示下图
解法(该解法过程中照片记录有限,努力回忆作):
-
这个系统之前装好后把安装U盘留下来了,我通过进入rescue模式,试图在chroot /mnt/sysimage 后通过 grub2-install 重新安装grub2 但是提示找不到x86_64-efi/modinfo.sh,可是我的安装U盘中也没有这个x86_64-efi/modinfo.sh。
-
所以我准备重新把centos7安装到另一个U盘中,安装后执行grub2-mkconfig 导出当前的grub配置,并将U盘中的/boot/efi 分区所在盘符。通过dd 备份到 无法启动的centos7 /boot/efi 分区所在盘。
-
接着拔掉新安装centos7 的U盘,重启电脑。进入grub 菜单后,“UEFI模式”按e编辑启动指令,因为刚刚U盘上的centos7,检测出来的磁盘序号,跟拔掉后是不同的。(这里主要修改磁盘编号分区编号没变化)
-
编辑完菜单中的磁盘编号后,我这里启动了好长时间,并且提示又进入emergency 模式但是输入root密码可以进行维护。在进入root 后发现原来机械盘上的/boot/efi 分区的flag 没了,且/etc/fstab 中 /boot/efi 的 uuid 编号跟blkid 打印出来的编号不一致。修改fstab 中的UUID后,我的centos7 正常启动了