linux引导修复失败

来源:百度知道 编辑:UC知道 时间:2024/09/28 08:31:10
前奏:硬盘完全格式化

linux部分:
UBUNTU_8.10_i386
手动分区安装
建立分区“/” “swap” “/home”

后来安装xp,引导信息被覆盖。无法进入ubuntu。

使用“矮人”进入grub之后,我依次输入命令:
root (hd0,[TAB] //查询分区块
root (hd0,7)
kernel /boot/vml[TAB] //错误提示大概是说“文件名错误或文件夹名错误”。然后我再改变命令:
kernel /vml[TAB] 或 kernel /[TAB] //同样的错误提示。我改变挂载点,挂载到我windows的分区上:
root (hd0,2)
kernel /[TAB] //返回正常结果提示。

现在grub无法搜寻到ubuntu引导,寻求高手相助。希望可以得到原理分析

方法一
xp下
下载最新的grub4dos然后把其中的grldr复制到c:\下
控制面板-文件夹选项-显示隐藏文件,显示系统文件。
然后在C:\找到boot.ini改 属性 去掉只读
加入一行C:\grldr=ubuntu把timeout=一个大一点的数
重启grldr会自动找到ubuntu,看看效果吧

2:
如果是硬盘安装也行
重启-进入liveCD-开启终端
输入sudo grub (出现grub>的提示符)
输入find /boot/grub/stage1 (出来的结果会是hd 0,1,不一定是0,1,但按照我上面的做法下来的一般都是。我第一次命令执行到这里就卡住了,后来多试几次,终于成功)
输入root (hd0,1) (hd0,1对应你自己出来的结果)
输入setup (hd0) (也不一定是0,自己注意对应关系)
输入quit (退出)

进入grub之后,应该查询boot 目录所在的分区块
find boot/grub/stage1
如果找到的是(hd0,2)

root (hd0,3)
boot

你的 kernel /boot/vml[TAB]这里没错的,错的应该是root (hd0,7)这步。假如你不确定ubuntu根分区是第几分区,而又对linux还不太熟悉的话就试试windows的工具吧。你的xp安装盘应该有分区魔术师或类似的工具吧?用分区魔术师查看一下分区表信息,确定一下ubuntu分区是否破坏了(主要看看分区使用率),再确定ubuntu所在是在哪个分区。下面列举可能的对应情况:
C盘 (hd0,0)
D盘 (hd0,4)
E盘 (hd0,5)
....
依次类推。确定后再进入grub试试看。