安装Ubuntu9.10后,习惯性的想要备份一下MBR,(为什么要备份MBR,参考[札记:UFZSKE木马(病毒)完全清除记录])打开PTDD3.0,提示分区5分区6重叠,是否修复,选择是后,修复重启机器,出现GRUB引导Error 17,linux和windows都进不去了.进winPE上网搜索一下,可能是PTDD修复硬盘时候,修改了MBR,导致找不到安装在linux下的GRUB相关文件所致.查了一下,解决方法如下:

        1.进深山红叶DOS工具箱,修复MBR:
        Fdisk /mbr
        然后就可以进windows了,但是无法进入linux.这一步是为了有个windows可以用,为下面几步查查资料,下点东西,有Ubuntu LiveCD或者Win-PE的朋友可以跳过.

        2.首先设置机器自CD启动,放入Ubuntu的livecd,所有分区会自动mount的.(如果读不出分区,进深山红叶DOS工具箱,修复一下分区表.)进入文件系统,依次打开文件夹boot,grub,在该文件夹下打开控制台,输入:
        sudo -i
获取root权限,然后输入:
        find /boot/grub/stage1
find命令会查找grub所在分区,返回一个值,比如(hd1,5),表示第一块硬盘,编号为5的分区.
再输入:
        root (hdx,x)
root命令设定boot分区,如果上面find步骤返回的(hd1,5),这里你就root (hd1,5)
继续输入:
        setup (hdx)
如果find命令返回的是(hd1,5),就输入setup (hd1)如果返回(hd0,num),你就 setup (hd0).
        提示succeed、表示重建grub成功.

3.重启OK.

PS:

        1.没有LiveCD光盘但是XP系统里有Ubuntu9.04/9.10镜像的朋友,可以参考[Windows XP下使用ISO镜像文件四步实现硬盘安装Ubuntu 9.10/9.04]这篇文章,他将会给你一个思路,在修复了MBR之后,可以进windows XP但是不能进linux,也就是GRUB错误的情况下,使用windows XP安装wubildr,修改XP的boot.ini达到启动时可以进入Ubuntu LiveCD,然后进控制台修复GRUB.

        2.如果重启之后在GRUB阶段出现菜单,选择之后进入提示错误,则需要再次进入LiveCD,检查boot/grub/menu.lst文件是否有误.这个过程如果不了解hd和分区编号,可以执行sudo fdisk -l 来查看,会发现对于硬盘的编号从0开始,不同接口还会有hd和sd之分.而grub从1开始计算, 硬盘统一都是hd,不分什么hd和sd.
        3.有关GRUB和menu.lst的写法Google之,下面给出CSDN上面查到的一些内容:
http://blog.csdn.net/lovegod12/archive/2009/02/11/3877997.aspx


部分原创文章若需转载,请注明出处: 转载自 夜幕里的稻草人 [http://www.didodi.cn/]
本文链接地址:[http://www.didodi.cn/post/208.html]