分页: 1 / 1

[分享] 安装XP和Ubuntu8.04双启动失败后的恢复:老主板无法识别大硬盘篇

发表于 : 2008-10-30 7:40
powerman
在windowXP基础上,安装ubuntu 8.04双启动。安装过程采用通用的过程,先在硬盘末尾划分20G给ubuntu,格式化两个区,即swap区和“/” 区。安装结束后重启,无法启动,连windows都不能进入。启动界面停在启动grub阶段,显示错误:error 17。

一、查找资料
发现该错误是由于grub无法挂载分区造成的。我的硬盘160G,ubuntu分区在最后20G,分区是sda10。可能是我的BIOS无法读取大于137G的硬盘。但是我的主板太旧,没有地方更新BIOS来支持大容量硬盘了。

二、修复windows启动
用win98启动盘启动后,运行:fdisk /mbr。重启后就可以进入windows了。但是不能启动ubuntu。

三、修复ubuntu引导菜单
第一步:下载grub4dos中文版的grldr,复制到C盘根目录。
第二步:打开C盘根目录下的boot.ini文件,加入:C:\GRLDR=ubuntu

默认情况下grldr会搜索所有分区的menu.lst文件。如果硬盘其他分区根目录下没有menu.lst文件,那么ubuntu文件系统sda10的boot\grub\menu.lst文件可以被找到,否则需要复制一份boot\grub\menu.lst到C盘根目录下,可以优先被使用。
选择第一个“Ubuntu hardy , kernel 2.6.24-16-generic”就可以启动ubuntu了。大多数电脑到这一步可以修复了。
但是我的电脑BIOS不支持大于137G的硬盘,根本就找不到sda10里的boot\grub\menu.lst文件,只好接着做下一步。

第三步:用ubuntu LiveCD光盘启动体验版ubuntu。
第四步:打开ubuntu文件系统的“/” 区分区,将boot目录复制到硬盘C盘中。
第五步:打开C盘boot\grub\menu.lst文件,menu.lst中启动Ubuntu的命令如下所示:

title Ubuntu hardy , kernel 2.6.24-16-generic
root (hd0,9)
kernel /boot/vmlinuz-2.6.24-16-generic root=UUID=xxxxxxxxxxxxxxxxxxxx ro quiet splash
initrd /boot/initrd.img-2.6.24-16-generic
quiet

必须将所有(hd0,9)改成(hd0,0)。否则启动grub时出现错误提示:error 5,查找(hd0,9)分区错误。

这样重启后在启动菜单中选择ubuntu,终于可以进入刚才安装的ubuntu了。

Re: [分享] 安装XP和Ubuntu双启动失败后的恢复:老主板无法识别大硬盘篇

发表于 : 2008-11-17 20:47
上帝很帅
好文章,大硬盘问题