Ubuntu Grub Rescue 修复

Ubuntu Grub Rescue 修复

笔记本上装的系统比较混乱。

刚开始时候是Windows XP,后来装了openSUSE11。Windows 7出来后,利用在MS实习的便利,装上了Win7。后来对Ubuntu开始感兴趣,又装了Ubuntu 10.04,现在升级到了10.10。这几个系统并存的后果是,一不小心,就进不了系统了,经常是因为弄坏了Ubuntu Grub。

先前几次的几次小问题,很容易就修复了。最近用Win7的时候,看到有一个盘符H:,是未格式化的一个分区,每次都不小心点到它,然后半天响应,弹出一个对话框。终于被它惹怒了,用分区软件把盘符隐藏了起来。没想到一隐藏,反而出问题了。

系统重启后,发现进了grub rescue模式,又进不了系统了。

Google了一番后,很快找到了解决方法,只需在grub rescue命令行下,输入下列命令,就顺利的出现了Grub界面:

grub rescue >   set  root = (hd0, 8 )
grub rescue
>   set  prefix = (hd0, 8 ) / boot / grub
grub rescue
>  insmod normal
grub rescue
>  normal

我猜想是,在Windows里把盘符隐藏后,可能影响了分区的的顺序,从而使原来的(hd0,7)变成了(hd0,8),从而Grub找不到文件了。

抱着这个想法,我试着启动进入openSUSE,内核自举后,发现无法挂载根文件系统,提示unable to mount root file system,直接掉进了修复模式的root shell。什么都不能改,只好Ctrl+Alt+Del重启,进入Ubuntu。启动到一半时候,提示openSUSE所在分区无法挂载,Ctrl+Alt+F1进入tty1后,发现正在挂的是/dev/sda9,而现在的序号都往后推了一位了,也就是说现在/dev/sda9其实是原来swap分区,当然挂不上去了。手动挂/dev/sda10,顺利挂上去了。

改openSUSE自己的Grub,然后运行sudo update-grub2,重启,3个系统都可以顺利进入了。

总结:

1、遇到问题不能慌,不能总想着重装。

2、Google是个好哥哥,有事没事多问问他。

3、以后没事少瞎折腾。

你可能感兴趣的:(Ubuntu Grub Rescue 修复)