一、本解决方案所要解决的问题:
我们可能在安装WIN时,把GRUB或者LILO从MBR上清除。如果在没有系统引导软盘只有安装盘的情况下,所采取的解决解决办法。
常用恢复MBR的办法还有一种是用升级系统的办法,这种办法经过验证,是极不可靠的。我们经过近二三十次的实践,证明效果几乎很少,这个办法用于没有安装GRUB的还是可行的。如果已经把GRUB安装上,后来就重装WINDOW或者别的操作系统而带的LILO,而导致系统不能正常引导,这种办法就失效了。所以说,本方案最适合GRUB的恢复。
二、解决过程[以RedHat 7.3为例]
1.把安装盘的第一张放到光驱,然后重新启动机器,在BOIS中把系统用光驱来引导。
2.等安装界面出来后,按[F4]键,也就是linux rescue模式。
3.一系列键盘以及几项简单的配制,过后就[继续]了。。。这个过程,我不说了,比较简单。
4.然后会出现这样的字符
sh#
5.我们就可以操作GRUB了。。。哈。。。只要能出现这样的,以后都是小KISS了,我就是不说 ,谁也能明白,地球人都知道了。。。。
sh#grub
会出现这样的字符
grub>
我们就可以在这样的字符后面,输入
grub>root (hdX,Y)
grub>setup (hd0)
如果成功会有一个successful......
这里的X,如果是一个盘,就是0,如果你所安装的linux的根分区在第二个硬盘上,那X就是1了;Y,就是装有linux系统所在的根分区。 setup (hd0)就是把GRUB写到硬盘的MBR上。
我来举个例子吧,如果以我的硬盘为例。我在第一个硬盘上装了XP,在第一个硬盘的hda9个装了RH73.我总共有两个硬盘。如果我把GRUB丢了,就用这种办法找回来。 如果你不知道你的linux安装到哪个分区上,也就是说,不知道这个Y是多少,这也不要紧,先输入root (hdX,然后用[TAB]来查看,一下就明白了...
操作如下:[前面开机启动的上面有说明]
sh# grub
会出现下面的字样的
grub>
然后再这样操作,如果我知道我的linux装在第一个硬盘上,但我不知道装在哪个分区上,就可以先输入root (hd0,然后用[TAB]键来补齐,然后就明白了。
[code:1:3249bf1c31]
grub>root (hd0,8)
grub>setup (hd0)
[/code:1:3249bf1c31]
请弟兄们结合文章及这个例子,仔细想一想。
我的第一个硬盘的分区情况是这样的。。
/dev/hda1 主分区 NTFS
/dev/hda2 扩展分区
/dev/hda5 NTFS
/dev/hda6 FAT
/dev/hda7 FAT
/dev/hda8 /boot ext3
/dev/hda9 / ext3
/dev/hda10 /swap ext3
最后就是按一下[RESET]键,重新启动,就OK了。。。。这步应该是最简单的吧。。。哈。。。。