Windows与Ubuntu双系统重装WIN7后修复Grub2

http://www.linuxidc.com/Linux/2012-02/55304.htm

一直在使用Windows与Ubuntu双系统(估计很多的linuxer都是这种情况)。前一段时间重装了Win7,然后启动后便会不选择系统而直接进入Windows。原因其实蛮好想的,就是因为Windows的引导程序覆盖了MBR,启动时不再使用grub引导。至于修复方法,下面是一些总结。

这个问题具体的解决方案很多,但总体的思路其实就两步:第一步、想尽一切办法进入linux;第二步、在linux环境下用grub重新覆盖MBR。

对于第一步,我采取的方法是使用grub4dos。

首先下载grub4dos,这个随便一搜就有,估计很多人最初安装linux是就用到过。

解压后把grub.exe,grldr复制到C盘的根目录。注意,win7的C盘中原有一个grldr,是一个隐藏着的系统文件。在复制时一定要将它备份好,以后还会用得到。网上的解决方案说还要复制menu.lst,其实这个不是必须的,没有它也可以解决问题。

然后重启系统。因为使用了grub4dos的grldr,所以会由grub.exe来引导启动。引导时它会自动搜索menu.lst,找不到就会进入命令行模式。然后就要在grub4dos的命令行中启动linux。这个就比较容易了

grub>root (hd0,x) (x表示/boot分区的编号)

grub>kernel /vmlinuz-x.xx.xx-xx-generic root=/dev/sdaY (xx表示kernel的版本,可以用ls命令看一下/boot下面这个文件的名字是什么;而最后面的Y是/分区的编号。需要注意的是,采用(hdo,x)的表示方法时,编号是从0开始的;采取/dev/sdaY表示方法时,编号是从1开始的)

grub>initrd /initrd-x.xx.xx-xx-generic (xx和上一条命令里的一样,都是kernel版本)

grub>boot

这时候应该就可以进入linux了。

第二步要用grub覆盖MBR

这一步就更简单了。首先更新一下grub,使它可以识别win7

sudo update-grub

更新之后,输入命令覆盖MBR。具体的命令因grub版本而异。我用的系统为ubuntu10.10,使用grub2。它需要的命令只有一句话

sudo grub-install /dev/sda

如果提示安装成功,那就大功告成了。重启计算机,就又看到熟悉的grub选择界面了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值