分页: 1 / 3

[分享] 安装时出现GRUB致命错误的解决方案。

发表于 : 2008-05-23 22:04
sfz97308
有很多朋友安装ubuntu 8.04时,到94%时会发生grub-install 的致命错误,我也是碰到这种问题的不幸人员之一。
前一段时间从论坛上发帖询问,发现没有人能够给我提供一个真正讲得通的解决方案,于是决定自己研究,终于找到了解决方案。

我通过在虚拟机上多次安装,发现出现此问题的原因在于ubuntu安装程序和文件系统的冲突,应该是ubuntu的安装程序设计中的Bug导致的。
如果使用Reiserfs作为文件系统,那必定会出现GRUB安装的致命错误,如果你选择ext3,你会发现,94%的档会很容易的过去。所以,采用ext3文件系统是最简单的解决方案。

  另外,如果你希望使用Reiserfs,那我在这里也提出一种解决方案,思路是自己安装GRUB。当出现了致命错误之后,会自动进入LiveCD界面,此时进入终端,进行以下步骤:

sudo su

grub

find /boot/grub/stage1
这时会显示(hdX,Y)

root (hdX,Y) 其实就是安装ubuntu的分区,请注意这里的X,Y,下面步骤中的X,Y都是这里的

setup (hd0) 注:此处的(hd0)请根据情况修改。一般如果要安装到MBR就用(hd0)。不过我是通过BCD引导GRUB的,所以安装到了(hd0,9) (也就是我的 / 区)

quit

cd /media

mkdir diskm

mount /dev/hdaY+1 /media/diskm (注意是Y+1,如果你的Y=9,那这里应该是sda10)

gedit /media/diskm/boot/grub/menu.lst

在出现的Gedit编辑窗口中,输入以下内容:
default=0
timeout=5
title ubuntu
root (hdX,Y)
kernel /boot/vmlinuz-2.6.24-16-generic root=UUID=请通过下面的介绍获得此处的序列 ro quiet splash locale=zh_CN
initrd /boot/initrd.img-2.6.24-16.generic
quiet
保存即可

上面的UUID获取方法:
在终端中输入sudo vol_id -u /dev/sdaY+1
这样,重新启动后就能通过GRUB启动ubuntu了

发表于 : 2008-05-23 22:57
adagio
不错,以后出问题参考参考,不过我也一向是自己安装grub的,到现在没有出问题,其实grub很稳定的。

发表于 : 2008-05-24 11:41
lhw828
一定要划分swap

发表于 : 2008-05-24 20:55
Super126
干脆直接划出一个/boot 的ext3分区,不知可不可行...
偶244M的内存,费了九牛二虎之力才才装上7.10,看来只有在暑假才能体验8.04了....
不知那位高人可以告诉我8.04用的Reiserfs是哪个版本的?Reiserfs4?不是?

发表于 : 2008-06-02 20:14
billbear
不是吧,我一直用reiser,从来没有问题。至于三楼说的一定要swap,我看不出来grub错误与有没有swap有什么关联。
事实上我多次装过没有swap的机器。没有问题。内存够大的机器基本用不到swap,除了休眠。

发表于 : 2008-06-02 20:21
BigSnake.NET
暂时顶置

发表于 : 2008-06-03 13:25
锅盖小克
我一直就用ext3,仍然是这个结果,为什么呢?

因为Grub不能覆盖安装。也就是说,如果原来设置了一个Grub,是不能再在此分区上安装一次的,这种情况发生在装了7.10之后升级安装8.04的时候,94%。
处理方法是再划分一个主分区,或者把原来的分区整个mkfs(慎用!这个命令相当于Windows的Format /q!它会格式化你的分区!!!)。

UBUNTU不能直接用LiveCD升级安装,应该试试别的方法。。。谁能告诉我一个完美的解决方法?
:?:

发表于 : 2008-06-04 8:38
jinqingzhu
我也遇到了这个情况啊 但是按照楼主的方法试了也不好使啊
sudo su

grub

find /boot/grub/stage1
到这里 就说没找到文件啊 什么的 还有我整的也是EXT3 格式的

发表于 : 2008-06-05 23:55
muzuiget
我也觉得与grub没什么关系。可能原因是,某些主板BIOS中默认启动“病毒防护”之类的功能,也就是防止随便修改MBR,安装时最好关掉,还有硬盘兼容模式。或者不要安装Grub到mbr

发表于 : 2008-06-06 20:22
wzs993636
LZ,
貌似不是你所说的样子哦,之前我一直都是用ext3也一样会出现同样的问题,一般会出现这种都是发生在安装多系统的时候,我认为GRUB无法安装到MBR的原因还是分区问题,之前的安装我都是拿一个分区出来然后在安装ubuntu的时候再对这个分区分成两个区,一个ext3和一个SWAP这样几乎是100%到94%的时候必出错,当然,我把UB装C盘就不会出现这样的错,但是我的C盘原计划就是给XP的,所以我还是想办法把UB装G盘,废话了这么多,没一个有用的..........

我还是把我的解决办法写出来吧
如果你是装双系统的话   你直接在XP下把你要安装UB的分区分出来 我是拿30G的分区来分
一个分28G为主分区一个2G为交换区,然后在安装的时候直接选择那两个分区格式化成EXT3和SWAP格式安装即可,缕试不爽,再无失手,我现在是三系统UB+XPX=VISTA当然还一个DOS..........汗一下~~~~~~~~~~~

最后我再讲讲我分析出现这种问题原因,希望高手指点,我想这可能和WINDOWS分区时的那个8M的自由分区有关,用UB删除分区再分区会把那个8M的自由分区也拿进来分了,导致GRUB后来无法正确找到MBR,从而无法安装.

发表于 : 2008-06-10 10:51
jinqingzhu
同意楼上的说法!!! :o :o :o 我也那么觉得啊 现在我直接不装双系统了,而是用俩硬盘了 呵呵 一个320G硬盘装WINDOWS 80G的装Ubuntu 哈哈 我的是笔记本电脑 拆硬盘简单 哈哈

发表于 : 2008-06-10 22:35
jhon
昨天在安装8.04时,也不幸踩到了地雷。
现说出我的解决方法,仅供参考。

请先看图。
[Ubuntu 8.04]图解Ubuntu 8.04桌面版安装(菜鸟必读)[转载]
http://www.ubuntuchina.com/redirect.php ... o=lastpost

背景:
格式---ext3
安装分区--F盘(非C盘)
分区方法--手动分区(第四步)
解决方法--在安装的第七步点"安装“按钮上方有“高级”按钮,
打开此按钮,选择GRUB安装的场所,变更为你安装ubuntu根目录(即 / )的分区。
如我的根目录分区为sda1.

如果无效,请大家回复一下,方便验证。

发表于 : 2008-06-10 23:21
flyinflash
请版主将核心内容整理加入 wiki

发表于 : 2008-06-11 20:33
lhw828
前几天帮我同学装,也遇到类似问题。

幸好现在有经验了,顺利解决…………

发表于 : 2008-06-12 17:58
daf3707
我一直在用Reiserfs啊,grub都是自动安装的,好像也没有地方可能选择安在哪啊,反正一直没问题。Reiserfs这种格式也是一样啊。就是有一点,如果异常关机,在进入grub之前会等好长时间。这和ext3之类启动过程中的fsck一样的吧