当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > 修复grub引导菜单

Unix/Linux
HP工程师经验分享(38)
HP工程师经验分享(37)
vi介绍编(3)ex命令
Linux中流媒体HelixServer的安装和配置
hp-ux简介
浅谈HP-UX认证
惠普取消3H0关于Openview部分
教你如何学习GRUB
windows box和openssh连接的问题
Linux网络驱动程序编写一
Richard Stallman在清华大学的讲演提要zz
Linux网管123---第4章.安装及硬体组态-5.选择想要安装的套件
Linux系统中的文件管理
cvs常用命令
solaris下的ftp命令介绍保存
lumaqq使用手记
Linux网管123---第4章.安装及硬体组态-1.建立一张安装磁片
硬盘安装LINUXFC4成功,感谢CU
RHCE认证浅析
中国Linux培训炙手可热人才需求将突破120万

Unix/Linux 中的 修复grub引导菜单


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-15   浏览: 109 ::
收藏到网摘: n/a

昨天装上了ubuntu8.04,和windows xp 一起又构成了双系统,运行得很好.手痒痒在windows下用PM格式化并合并了一个ext3到fat32的分区,然后就关机了.今天开机,郁闷,又出现了前次出现的问题(有时候问题你不解决它,它就跟着你~):开机无法进入grub引导,显示error22.我也看不懂这error什么意思,不过有了前次的经验,我知道再装一个系统就能间接修复grub.可是我不想这么麻烦,这实在吐血...于是上网查了一下,发现百度真是太帅了.以下是几种网上的方法,我并没有全部试过,但是第一个我已经试过了,并成功地修复了我的grub,开机正常了.哈哈...

几种方法基本类似:

1)用LIVE CD进入图形界面,打开终端
输入一下命令:
$sudo su
$grub
grub>boot (hdx,y)
grub>setup (hdx)
/*这里解释一下: x 代表硬盘,如果你只有一个硬盘,一般都是的, 那么 x 填 0 而 y 的值是你的ubuntu系统/root所在的分区,如果你不知道是哪个分区*/
/*你可以用Tab键代替,然后就会有显示,填入相应的正确值即可. 下面的 x 值跟上面的 x 值相等. */

2) 使用livecd启动,进入桌面系统,在终端输入

grub update

进入grub命令行,输入

root (hd0,x)
setup (hd0)

hd0指第一块硬盘(不分串口SATA、并口PATA),x是linux的主目录“/”所在分区号,编号从0开始,比linux里显示的分区编号小1。比如linux里显示硬盘分区号为hda5,这里x就是4。分区编号可以用菜单里的磁盘实在不知道是多少,就挨个试,到grub提示分区格式为ex2fs一般就是了。注意root (hd0,x)在root后面必须有空格。root命令是指定引导的分区,setup命令把引导信息写到硬盘MBR。

3)
1. 用Live CD启动
2. 打开一个终端,运行$sudo grub 你会看到'grub>'这样的提示符
3. 在提示符'grub>'后输入find /boot/grub/stage1,你会得到一个运行结果,比如我的机子上结果是(hd0,5) (这个命令其实就是找出/boot所在分区)
4. 运行 grub>root (hd0,5) (这个位置要填上你机子上的运行结果)

5. 运行grub>setup (hd0) 出现几行提示文字,最后是“... succeeded” 修复成功!
6. 运行quit
8. 重启计算机,取出live CD