问题描述:我的电脑是win10,centos7双系统,通过grub2引导。
但是今天开机win10一直转圈圈,强行reset以后,再进系统就直接grub rescue了。 然后通过Centos Live光盘进入救援模式,尝试修复,结果自动查找系统时报错:you don’t have any linux partitions。
卧槽,这回坑爹了,难道让我重装。 这可不行!我以前也有这方面的经验,然后查找过去的笔记,结合百度搜索,动手操作果然搞定了,由于时间仓促,来不及拍照截图,只把解决过程和方法记录下来:
解决办法:
首先通过救援光盘引导系统,选择菜单:Rescue centos => troubleshooting
进入命令行模式以后:运行以下命令:
lvm vgscan 查看系统中的卷组
lvm lvscan 查看系统中的逻辑卷
lvm vgchange -ay 激活逻辑卷
此时会显示active字样已经被激活的逻辑卷列表
此时再运行:
lvscan
查看root所在的卷组:比如/dev/centos/root
然后运行:
fsck /dev/centos/root 修复根分区逻辑卷
如果提示是xfs文件系统,需要用xfs_repair修复,则运行:
xfs_repair /dev/centos/root
然后会跑一堆日志,最后提示: release dirty buffer! done!
然后重启系统,仍然通过救援模式引导电脑:
这个时候再次尝试查找centos时,就能找到了,并提示自动挂载到/mnt/sysimage下。
然后运行:
chroot /mnt/sysimage
grub2-mkconfig -o /boot/grub2/grub.cfg
grub2-install /dev/sda
备注: /dev/sda指的是你要安装grub引导程序的硬盘(也是你开机引导的那块硬盘),这个可以通过lsblk或者fdisk -l来查看,根据实际情况自行选择
所有命令完成以后,重启机器,搞定!