centos7 丢失grub无法启动

1、使用CentOS7的原版镜像开机从光驱启动

当然你也可以做成启动U盘,从U盘启动

2、选择Troubleshooting->Rescue a CentOS system

3、根据提示先选择1

提示没有找到任何Linux分区,这时会进入shell

4、发现LVM逻辑卷

lsblk
lsblk -f

可以看到/dev/sda2为LVM2_member

/*扫描vg卷*/
vgscan

/*激活vg*/
vgchange -ay 

5、挂载故障根分区到/mnt/sysimage

mount -rw /dev/mapper/centos-root /mnt/sysimage

cd /mnt/sysimage
并vi etc/fstab文件
下面是根据lsblk -f 反推出来的/etc/fstab

/dev/mapper/centos-root  /     ext4 defaults 0 0
/dev/mapper/centos-opt   /opt  ext4 defaults 0 0
/dev/sda1                /boot ext4 defaults 0 0

保存后reboot重启

6、重复第1,2,3步,重新进到Rescue模式

这时选择1,就可以找到分区了 可以看到提示你的系统已经mounted under /mnt/sysimage 输入回车进到shell

lsblk可以看到/mnt/sysimage 和/mnt/sysimage/boot已经挂载上了(见下面第7步中的截图)

7、安装内核

rpm -ivh /run/install/repo/Packages/kernel-3.10.0-1160.el7.x86_64.rpm --root=/mnt/sysimage --force

8、重建grub.cfg

chroot /mnt/sysimage
grub2-install /dev/sda
grub2-mkconfig -o /boot/grub2/grub.cfg

exit

退出实根后重启服务器 reboot

9、这时验证是否修复成功

可以看到内核菜单已经正常显示

第二次自动重启后,系统正常进行登录界面

系统恢复成功

版权声明:
作者:郭靖
链接:https://www.sxszhian.com/archives/9157
来源:上海永驰网络科技有限公司
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
打赏
< <上一篇
下一篇>>