火鸟hust
问题描述:在Ubuntu使用中不小心改动了Grub2的设置,导致无法启动Ubuntu和windows,我用桃PE系统修复了windows启动项之后Grub2的选项消失,用EasyBCD修改启动项也无法完全修复。问题类似于很多人的重装windows或者windows启动项修复之后Grub菜单消失的问题。
以下是拜读了Ubuntu中文论坛会员SmallApple原创的grub2基础教程-修订版后根据情况稍作修改后的笔记整理,仅供大家参考。
************************************************************************
五、使用grub2常见错误及修复方法
1、双系统,重装windows引起没有ubuntu启动项
使用安装版的windows重装windows时会改写mbr,造成grub丢失,可以用grub4dos引
导进入ubuntu后修复grub或用livecd启动后修复grub。
1)用grub4dos修复ubuntu
先下载最新版的grub4dos,下载地址http://nufans.net/grub4dos/ ,如果是xp系统,
把grub4dos压缩包内的grldr复制到C盘根目录下,修改boot.ini,在最后加上一行
c:\\grldr="grub4dos",
对于vista/win7系统,把压缩包内的grldr.mbr和grldr复制到C盘根目录下,在C盘自己
建立一个boot.ini文件,若有boot隐藏分区的,先给boot分区分配盘符,再把grldr,
grldr.mbr和boot.ini放在boot分区下,boot.ini内容如下:
Win7使用软改激活的请不要使用此方法,否则会造成win7不能启动。
然后在根目录新建一个menu.lst,内容为
timeout 0
default 0
title grub2
find --set-root /boot/grub/core.img
kernel /boot/grub/core.img
boot
(有/boot分区的改为
find –set-root /grub/core.img
kernel /grub/core.img)
重启后选择Grub4Dos会自动转入grub2,从grub2菜单项选择ubuntu启动后,在终端
执行
sudo grub-install /dev/sda
将grub装入第一硬盘的mbr,如要装入第二硬盘的mbr把sda改为sdb,第三硬盘为
sdc,类推。
至于要把grub装到sda或sdb或sdc的mbr上,需根据自己情况确定,看看要设置哪一块
硬盘为启动盘,就把grub装到那块硬盘的mbr上。
3)用带grub启动的光盘或U盘修复
如果手上有grub启动的工具盘,用工具盘启动,在grub菜单上按c进入命令行状态,
在grub>提示符下输入
grub>find /boot/grub/core.img (有/boot分区的用find /grub/core.img)
(hdx,y) (显示查找到的分区号)
grub>root (hdx,y)
grub>kernel /boot/grub/core.img (/boot分区的用kernel /grub/core.img)
grub>boot
执行boot后能转入grub2菜单,启动ubuntu后,再在ubuntu终端下执行
sudo grub-install /dev/sda (或sdb,sdc等)修复grub。
如果ubuntu的启动分区使用ext4格式,要有支持ext4格式的grub才能修复。
由于我的win7系统是用WIN7ACTION软件激活的,所以不使用上面第一种方法修复启动项,以免win7再次失去启动。(用OEM软件激活的win7也是)
具体步骤如下:
1、插入桃制作的U盘启动盘,在“程序”里找到启动自动修复,选择安装win7的盘符,修复win7启动项。(我的是因为启动项损坏,Ubuntu和win7都进不去才这么做的,如果win7启动项正常可以省略这步)
2、以管理员身份运行easyBCD,如下图
然后保存设置,重启电脑。
3、重启后再启动菜单选择Grub,然后会进入Grub命令模式或在grub菜单上按c进入命令行状态,在grub>提示符下输入:
grub>find /boot/grub/core.img (有/boot分区的用find /grub/core.img)
运行后会显示(hdx,y)结果 (显示查找到的分区号)
grub>root (hdx,y)
grub>kernel /boot/grub/core.img (/boot分区的用 kernel /grub/core.img)
grub>boot
执行boot后能转入grub2菜单,启动ubuntu后,再在ubuntu终端下执行
sudo grub-install /dev/sda (或sdb,sdc等)修复grub。
如果ubuntu的启动分区使用ext4格式,要有支持ext4格式的grub才能修复。
4、接下来就可以正常使用了,可以试试美化Grub界面。