Ubuntu9.10之后(含)版本重装Win系统后Grub启动菜单的修复

Stupig posted @ 2010年7月15日 07:56 in Linux with tags ubuntu linux grub Grub4dos , 7343 阅读

  大家都知道,Microsoft如果以安装盘方式安装完系统,就会强盗般地强制更新了MBR。而如果在这之前有安装了Ubuntu 9.10,那么Ubuntu的Grub启动菜单就会不翼而飞。下面是个人整理的解决办法,供大家参考一下:

  方法一:使用Ubuntu 9.10 LiveCD/LiveDVD/LiveUSB

  1、用Ubuntu的LiveCD、LiveDVD或者LiveUSB启动,进入Ubuntu的Live环境;

  2、进入Ubuntu Live之后,从”应用程序》附件》终端”启动Shell;

  3、下面是在终端内输入的命令列表:

$ sudo -i
$ mount /dev/sdc3 /mnt
$ mount /dev/sdc2 /mnt/boot
$ grub-install –root-directory=/mnt/ /dev/sdc

  如果没有”grub.cfg“文件,请重新创建:

$ mount –bind /proc /mnt/proc
$ mount –bind /dev /mnt/dev
$ mount –bind /sys /mnt/sys
$ chroot /mnt update-grub
$ umount /mnt/sys
$ umount /mnt/dev
$ umount /mnt/proc
$ exit

  方法二:使用Grub for DOS

  首先要下载Grub for DOS

  1、对于XP操作系统:

  把Grub文件Copy到系统盘根目录下,然后编辑”boot.ini“文件(需要去掉隐藏、只读、系统属性),并在文档最后加上一行:(X为当前系统盘符)

X:\grldr="grub4dos"

  2、对于Vista/Win 7操作系统:

  同样是Copy文件到系统盘根目录,然后建立一个新的文本文档文件并更名为”boot.ini“,其内容如下:(X为当前系统盘符)

[boot loader]
timeout=0
default=X:\grldr.mbr
[operating systems]
X:\grldr.mbr="Grub4Dos"

  现在在系统盘(XP/Vista/7均适用)根目录下建立一个新文档文本文件,更名为”menu.lst“,其内容如下:

timeout 0
default 0
title grub2
find –set-root /boot/grub/core.img
kernel /boot/grub/core.img
boot

  现在重新启动,选择Grub4DOS启动,进入Ubuntu。登陆之后,使用下面的命令行,重建Grub:

$ sudo grub-install /dev/sdc

  注意:上面的方法均涉及硬盘操作,请慎重!如果因此而造成的危害,本人概不负责!


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter