记一次重装Ubuntu导致启动失败的修复
因为把Ubuntu从13.04升级到13.10后,鼠标出现了问题,一打开网页就不停的闪,而且好多东西都不一样了,又不好用,所以选择重装系统,重装的时候偏偏又重新分了区,然后装完了,一重启,悲剧了,进入修复grub rescue模式下了,一时间就不知道怎么办好了,好在还有个平板可以上网,马上上网搜。很快就搜到不少,点开第一个,“用U盘启动进入Windows系统重写mbr”?那我的Ubuntu不就没了!!!直接PASS!!!“直接在grub rescue”下修复,嗯,这个好。马上按给的方法试,我去,完全不一样好不好!完全没有变化!!再接着搜,嗯,这篇好像靠谱多了,还写了出现这种问题对应的情况,不错,有重新分区造成的,这个看起来是了。马上照着做。
1、输入set 查看当前的设置(原来这个是查看当前设置的,先前搜到的都不说清楚)
2、输入set root=(hd0,msdos11),难怪刚才我的没有变化,选择前搜到的根本没有set,直接就root=(hd0,msdos11)了。(msdos11是我Ubuntu安装的位置,每个人不同的,可以用ls (hd0,x)/root/grub 查看安装到哪个分区了,运行命令后出现很多文件的就是了)
3、输入insmod /grub/normal.mod,我靠,没有这个文件,什么情况!!!难道我的不是Ubuntu!!这不科学!!!冷静,要冷静!检查Ubuntu安装在哪个盘时还有几个文件夹,会不会是文件的路径不一样,嗯,查看一个其它文件路径看看,输入ls (hd0,msdos11)/root/grub/i386-pc,一个回国,出来一大串的文件名,大部分是.mod和.img的,应该就是这个了,把命令换成insmod (hd0,msdos11)/root/grub/i386-pc/normal.mod,成功!!!!
4、输入normal,回车的,熟悉的启动菜单出来了。不过还没有完。
5,进行Ubuntu,打开终端,输入sudo update-grub,更新一下引导文件。
6、输入sudo grub-install /dev/sda,等待几秒,我靠,失败,还没有原因!!算了,重启试试。等待中。。。我去,又是grub rescue!!!重新来过,再次进入Ubuntu,把网页再往下拉,还有解决的方法,不过刚才因为是要用live cd启动就没管,再试这个方法好了!(一般情况到这里应该就修复完成了,不过我的情况不一样,我是在重装时又重新分了区,而且还重新指定了引导文件存在的位置导致的,需要再用到下面的方法才行。)
7、输入sudo mount /dev/sda11 /mnt,把安装的盘挂载到/mnt上
8、输入sudo grub-install --boot-directory=/mnt/boot/dev/sda,我靠,出来这一串东西是什么,我没输入错误啊,怎么不是运行成功!再试!还是这样!!!!重复试了几次后,算了,重启吧,奇迹般的启动菜单出来了!!原来已经执行成功了吗?!!
好了!这就是过程了,我的小心脏啊!!!(这是没有把/boot单独分出来的方法,把/boot单独分出来的话就把命令中的“/boot”去掉就好了)