重装win7 修复ubuntu引导
恢复引导方法:
1.放进liveCD,重启,看到有界面出来的时候,选择试用,不要点安装。
2.进入ubuntu试用版后,打开终端,在左上角的应用程序->附件->终端那
3.输入以下命令:
sudo fdisk -l //得到的结果类似下面。查看ubuntu的根目录在那,这里没办法直接看出来,只能靠你自己识别,可以从分区的大小判断是不是根分区,就是在装ubuntu时,挂载点为 / 的那个分区
<!--more-->
从图中的结果看出来,根分区在sda12.因为小狼记得分/分区的时候是分了20G的大小,并且当时是先分了/分区,然后再分了一个20G的/home分区的。所以判断出sda12是/分区,而不是sda13,虽然它也是20G.把sda12记住。
<strong>注意:如果分区的时候,你单独把boot分区分出来了,还要多一步工作,就是找出boot分区:</strong>
从上图可以看出,boot分区在sda8,因为它是最小的,只有200M.(你装ubuntu的时候分了多少就是多少)
记住sda8。
4.输入
sudo mount /dev/sda8 /mnt
因为小狼的单独把boot分区分出来了,并且它的位置在sda8.如果你没有单独把boot分区分出来.那就修改一下位置,改为
sudo mount /dev/你的根分区所在位置 /mnt
5.输入
sudo grub-install --root-directory=/mnt /dev/sda8
同样,如果你没有把boot分区单独分出来就改成
sudo grub-install --root-directory=/mnt /dev/你的根分区的位置
这里应该不会有什么问题,因为如果位置不对,无法安装,你可以一直输这个命令直到位置对了为止.
6.如果出现了no error report。那你就差不多成功了.然后sudo init 6.重启。
7.重启之后你会无奈地发现......windows也无法启动了,进入的是grub的命令行.....不要怕。进到这里你已经离成功不远了.
输入:
root (hdX,Y) //x为硬盘位置,如果你只有一快硬盘,X=0,如果有多块,相应设置x。Y为boot分区所在位置,这里是8.如果没有单独分boot分区,y就是你的/分区所在位置
kernel /vmlinuz-2.xxxxx-generic root=/dev/sda12(无论你有没有把boot分区单独分出来,这里都要写/根分区的位置,否则无法完成启动,这里可以按tab完成填写)
如果没有单独把boot分区分出来,就是
kernel /boot/vmlinuz-2.xxxxx-generic root=/dev/sda12 这里可以按tab键补全文件名 原文的命令是linux不过我显示没有 应该是kernel
initrd /initrd.img-2.xxxxx-generic
或
initrd /boot/initrd.img-2.xxxxx-generic
boot
到这里已经差不多完成了.因为你已经可以进入原来的ubuntu了,但是如果就这样不管了,那么下一次重启还需要重复一次上面的工作。这也太渗人了。。。
那最后就修复一下grub吧.
打开终端,输入
sudo update-grub
看到
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.35-27-generic
Found initrd image: /boot/initrd.img-2.6.35-27-genericFound Windows Server 2008 (loader) on /dev/sda1
done
恭喜,现在已经全线完工了。赶快重启一下看看熟悉的grub引导菜单是不是回来了~
以上转自http://wowubuntu.com/fix-grub.html 部分有自己的修改
如果出现grub error 到了grub rescue的界面肿么办?
譬如 error:file not found 亦或是error:unknow filesystem
grub rescue>ls
查看有哪些分区 我的根分区是(hd0,msdos1) 因为我把ubuntu根分区放在第一块硬盘的第一个分区 没有另外分boot 显示可能有所不同
grub rescue>set root=(hd0,msdos1)
grub rescue> set prefix=(hd0,msdos1)/boot/grub
grub rescue>insmod normal
grub rescue>normal
现在应该开启正常的画面了 进入ubuntu还有两步
1.sudo update-grub
2.sudo grub-install /dev/sda
<strong>本篇文章转载至网络,我感觉我自己在操作的过程中遇到的一个问题就是:我在之前制作ubuntu的时候,分了一个跟分区,boot分区,和swap分区,在修复引导的时候,只挂载了跟分区,然后重新安装grub的时候,安装没有问题,但是无法启动。查了很多资料,最后终于找到解决方法,就是boot分区一定要挂载在跟分区的boot目录下面,然后再重新安装grub。然后启动一切ok!!!!</strong>