[stephen原创]Ubuntu系统中GRUB的修复 如果你以前为ubuntu和windows多系统,当你重新安装windows,就会在MBR中只存在windows的起动选项,没有了ubuntu的grub,你可以用如下方法解决: 用ubuntu的LIVECD(即安装光盘)启动,进入终端,输入sudo grub,回车 然后输入:
grub> find /boot/grub/stage1 注:这里是数字1,不是英文小写的L,                               前面的grub〉为提示符,不需要输入,下同 输出如下:
(hd0,1)

注:在ubuntu7.04以后的版本会出现find不到结果的现象,可能是因为这种版本用/dev/sda来表示分区的原因,而grub是用hd0来表示造成不兼容。所以需要你自己查找/boot所在的分区号。另开一个终端,使用命令:
sudo fdisk -l
列出你所有的分区号。
    1、如果/boot没有单独分区:那么只需要知道/分区的分区号。比如/分区号为/dev/hda5,那么我们所需要的结果就是(hd0,4)。
    2、如果/boot单独分区:那么需要知道/boot分区的分区号。比如/boot分区号为/dev/hda8,那么我们所需要的结果就是(hd0,7)。
然后输入:
grub>root (hd0,1)   注:这里的括号中的内容就是刚才输出的内容或者你自己查找到的/boot所在分区的分区号,其中还是数字0和1。
grub>setup (hd0)    注:这里的括号中的内容为刚才输出的内容中,逗号前面的内容。

如果结果类似下面的结果,那就是成功把grub安装到了MBR。(分区号可能与你的不一致,没问题。)

Checking if "/boot/grub/stage1" exists... no
Checking if "/grub/stage1" exists... yes
Checking if "/grub/stage2" exists... yes
Checking if "/grub/e2fs_stage1_5" exists... yes
Running "embed /grub/e2fs_stage1_5 (hd0)"... 17 sectors are embedded.
succeeded
Running "install /grub/stage1 (hd0) (hd0)1+17 p (hd0,8)/grub/stage2 /grub/menu
.lst"... succeeded
Done.

输入quit退出grub模式。

最后取出光盘重新启动即可。