Home » Featured, linux相关

关于重建 grub

25 07月 2007 Views: No Comment Tags:

第一步:想办法进入原来的linux.可以利用启动软盘,安装光盘等.也可以使用live cd,比如knoppix

1, 使用knoppix:光盘启动后,在boot:后输入knoppix 2出现knoppix提示符后,挂载原来linux的根分区,比如mount /dev/hda8 /mnt/hda8把改变当前的根分区和bashchroot /mnt/hda8可以看到bash提示符变了,这就可以进入下一步了

2,用安装光盘用光盘或硬盘安装方式,在boot提示符下输入linux rescue一步一步往下进行,redhat系统会找到已经安装过的系统,并挂载到/mnt/sysimage下,按提示输入chroot /mnt/sysimage(网上看到的,自己没验证过)

debian系统需要自己挂载原来的根分区,使用方法和knoppix一样

第二步:使用grub命令重建grub
在上一步chroot成功后,在新的bash提示符下敲 grub成功后回出现grub>提示符,给出你原来的启动映像所在的分区,root (hd0,6)需要注意,这个分区是要启动映像(比如vmlinuz开头的文件),还有grub目录,如果你在以前安装时只有一个/分区,那就是它,如果你给/boot单独划了一格分区,那你得先找到这个分区。另外,这个编号规则和hda*不太一样,通常hda7对应(hd0,6),hdb1对应(hd1,0), 因为(hd*,*)里分区的编号是从0开始的,而hda*后面那个数字是从1开始的。然后可以重建一个grub了,还是在grub>提示符下,敲 setup (hd0)这个命令会把grub写道mbr里然后quit命令退出grub,再重启就行了。

其他建议:其实可以选择不把grub写到mbr里,而是写到/分区或/boot分区里,使用windows启动菜单启动它
方法是在重建grub时用setup (hd0,6) 代替setup (hd0).或者安装时选择把grub写到根分区,而不是mbr
得到该分区的启动扇区,命令是dd if=/dev/hda7 of=/bootsect.lnx bs=512 count=1然后想办法把这个文件弄到windows下的c:\下最后修改c:\boot.ini文件,在最后添加一行c:\bootsect.lnk=”linux – grub”重启就能看到效果了.这样以后你就可以随便重装windows了,只要安装完后再把bootsect.lnk弄到c:\,再修改boot.ini就行了

原创文章如转载,请注明:转载自Xixis Blog [ http://www.xixis.net/ ]
本文链接地址:http://www.xixis.net/archives/on-the-reconstruction-of-grub.html

Leave your response!

Add your comment below, or trackback from your own site. You can also subscribe to these comments via RSS.

Be nice. Keep it clean. Stay on topic. No spam.

You can use these tags:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">

This is a Gravatar-enabled weblog. To get your own globally-recognized-avatar, please register at Gravatar.