Ubuntu12.04下grub和内核修复
用Ubuntu有一年多了,出现的问题真不少,今天上午一开电脑,发现无法进入grub界面了,直接进入了grub rescue的命令行界面,之前同学的电脑也出现过如此的问题,所以上网找过解决办法。
问题:
error:unknow filesystem grub rescue>
解决办法:
1、首先输入“ls”命令,终端界面中会显示磁盘信息,例如:
(hd0,msdos1),(hd0,msdos5),(hd0,msdos3),(hd0,msdos2)
2、然后查找引导文件(boot):
(1)如果boot单独分区:
grub rescue>ls (hd0,msdos*)/ 注:*代表磁盘号
(2)如果boot没有单独分区:
grub rescue>ls (hd0,msdos*)/boot
找到一个有grub文件夹的分区就是boot了。
3、设置启动路径:
(1)boot单独分区:
grub rescue>set root=(hd0,msdos*) grub rescue>set prefix=(hd0,msdos*)/grub grub rescue>insmod /grub/normal.mod
(2)boot没有单独分区:
grub rescue>set root=(hd0,msdos*) grub rescue>set prefix=(hd0,msdos*)/boot/grub grub rescue>insmod /boot/grub/normal.mod
4、然后如果上面的都成功了,在命令行中输入:
grub rescue>normal
5、重启电脑,此时已经显示grub界面了,然后进入ubuntu系统,更新grub:
sudo update-grub sudo grub-install /dev/sda (sda是你的硬盘号码,千万不要指定分区号码,例如sda1,sda5等都不对)
参考链接:http://forum.ubuntu.org.cn/viewtopic.php?f=139&t=348503
一般情况下,按照上面的步骤就可以搞定,但是今天我的情况还和上面的不太一样。出现的问题相似,如下:
error: no such file grub rescue>
第一句的错误提醒是不一样的,而且我通过上面的方法也找不到grub文件。于是我使用之前装系统制作的U盘镜像进入系统,发现我电脑中的ubuntu系统中的boot文件夹下的所有文件都莫名其妙的消失了,难道中毒了?
也就是说,不仅我的grub没有了,连linux内核都找不见了。我将其他电脑上的boot文件夹下的文件拷贝到我的电脑上也使用不了,应该是硬盘信息不同吧。上网找了好久,发现一个修复boot的神器:Boot-Repair。
官方网站:https://help.ubuntu.com/community/Boot-Repair
首先使用U盘镜像进入试用的界面,然后联网下载该软件:
sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update sudo apt-get install -y boot-repair && (boot-repair &)
下载完成后打开软件,点击高级设置:
按照官网上的说明,使用默认的选项就行了,可以直接点击应用,就会开始修复。不仅会重新安装grub,而且可以把U盘中的系统linux内核拷贝到boot中,这样就不会找不到内核了。
大概十分钟之后,就修复完成了,然后重启电脑,一切都回复正常了,再自己更新内核就OK了。