修改grub解决计算机启动报错:ERROR 17
原本计算机有C,D,E,F,G。C盘windows系统盘,G盘安装了CentOS。后来由于需要,就压缩卷的方式从D盘压缩出一个H盘。然后再次启动计算机的时候就遇到了错误:ERROR 17
原因:
就在于先安装Windows后安装Linux这样的话,grub就由位于G盘的CentOS引导,现在该分区之前又划分出一个新的逻辑分区,就导致磁盘系统符号向后移了一位,因此grub失败。
解决方案:
1,刻录一个Linux安装U盘,进入BIOS修改启动项,从U盘启动。
2,我是用的是RedHat 7.0。U盘启动之后,进入Troubleshooting选项,再进入Rescue a @#%$%%选项。一路回车,进入shell模式。
3,在shell模式下使用fdisk -l查看计算机的所有分区,找到原来CentOS的分区为sdb9。grub命令进入grub,root (hd1,8)命令指定分区,setup (hd1)将grub安装到对应的分区,quit退出grub。
这个时候再次硬盘启动,已经可以看到grub了。But只有windows可以启动,CentOS启动会报错,ERROR 17 ,Cannot mount……
4 ,再次U盘启动,进入rescue下的shell模式。查看一下Linux系统的grub配置文件是否有问题,我看了下,并没有什么问题。
#mkdir linux
#mount /dev/sdb9 linux
#cd linux
#cd grub
#vi grub.conf
5,硬盘启动进入grub界面,将光标移到Linux的启动选项上,摁e键,修改启动顺序。修改root(hd0,7)选项为root(hd0,8),Enter。就可以启动了。
新技能Get!
更多CentOS相关信息见CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14
本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-07/120045.htm