dpx4086 发表于 2007-6-6 15:56:22

关于grub的一个问题。

我的机器装的是xp和rh 8.0,grub装在hda(MBR)。
机器的分区情况大致情况是:
hda1   C盘
hda3   /
hda4   /home
hda中的扩展分区中分了一部分作为linux交换分区
hda5   E盘
hdb1   D盘
hdb5   F盘

今天用ghost恢复hda3,即linux根分区,按理来说应该是不会影响grub的,因为grub在MBR,对吧?但结果却是grub没有了,所以我也就无法引导任何系统了。

于是我又利用ghost把C盘恢复,因为之前我给C盘以及hda3做备份的时候grub是完好的。所以我想如果把C盘恢复,应该grub就能恢复了。但此操作没有效果。

只好试试修复了。放入rh 8.0第一张安装盘,进入linux rescue 模式试图修复grub。
在grub>状态下进行如下操作:
grub>root (hd0,3)回车
出现一行提示,大意是说hda3的文件格式是ext3
grub>setup (hd0)回车
此时出错,提示: check if /boot/grub/stage1 exists ...no
check if /boot/stage1 exists...no
File not find.

怎么会这样?按理grub应该是好好的待在MBR才对,怎么就会出错了。
下次我碰到想恢复linux分区的时候,应该怎么办?

谢谢。

cobranail 发表于 2007-6-6 22:24:10

你的分区不对,(hd0,3)=hda4, hda2呢?

dpx4086 发表于 2007-6-7 09:19:07

你的分区不对,(hd0,3)=hda4, hda2呢?

分配给扩展分区了,而我们也知道,D盘等盘一般都是扩展分区里面的,我的也是这样。

binbindatou 发表于 2007-6-8 00:27:47

既然能进Linux rescue,那为什么不让系统加载硬盘呢?
内核一致,加载proc应该不成问题。
chroot /mnt/systemimage(我忘了叫什么名字了)
grub-install /dev/hda不是更好吗?
官方也是支持用这种办法修复grub的,一般不要用grub命令──据说不安全。

dpx4086 发表于 2007-6-9 21:48:10

既然能进Linux rescue,那为什么不让系统加载硬盘呢?
内核一致,加载proc应该不成问题。
chroot /mnt/systemimage(我忘了叫什么名字了)
grub-install /dev/hda不是更好吗?
官方也是支持用这种办法修复grub的,一般不要用grub命令──据说不安全。

当时我也试了 “grub-install /dev/hda”命令,但是提示也是找不到文件之类的。不知道为什么。

Vheavens 发表于 2007-6-10 09:36:48

你应该写成:
grub>root (hd0,2)

grub>setup (hd0)



看这样行没有!!应该没问题了!!

DRIFT 发表于 2007-6-10 10:07:49

是否应该将Linux的分区划分到硬盘的最后?

Vheavens 发表于 2007-6-10 10:12:27

是否应该将Linux的分区划分到硬盘的最后?


这个好像没有规定,在那里都行。

dpx4086 发表于 2007-6-10 11:03:48

你应该写成:
grub>root (hd0,2)

grub>setup (hd0)



看这样行没有!!应该没问题了!!

但是hda2是扩展分区啊,应该不行吧???

Parakeet 发表于 2007-6-10 11:51:44

莫非你分了多个主分区

jiangtao9999 发表于 2007-6-10 13:20:59

ghost 好像分区备份不备份 MBR 数据,所以 grub 在恢复 XP 后不能回来。
grub 可能需要在安装的时候确定 grub 文件所在扇区,但因为 ghost 的备份和恢复是基于文件的,ghost 恢复导致文件地址发生变动,grub 因为找不到数据无法继续引导系统。
我觉得这样导致你的机器出了问题。

grub 用 chroot 后 grub-install 最快捷。

cobranail 发表于 2007-6-10 18:25:15

你应该写成:
grub>root (hd0,2)

grub>setup (hd0)



看这样行没有!!应该没问题了!!

但是hda2是扩展分区啊,应该不行吧???

hd0,2是hd0上的第3个分区,hd0,1是hda2。把linux放到最后是最省心的。

dpx4086 发表于 2007-6-12 09:08:05

"hd0,2是hd0上的第3个分区,hd0,1是hda2。把linux放到最后是最省心的。 "

???

hd0,2 怎么是第3个分区了,第三个分区不应该是 hd0,3 吗?

dpx4086 发表于 2007-6-12 09:14:20

莫非你分了多个主分区

恩,四个主分区。

dpx4086 发表于 2007-6-12 09:23:39

ghost 好像分区备份不备份 MBR 数据,所以 grub 在恢复 XP 后不能回来。
grub 可能需要在安装的时候确定 grub 文件所在扇区,但因为 ghost 的备份和恢复是基于文件的,ghost 恢复导致文件地址发生变动,grub 因为找不到数据无法继续引导系统。
我觉得这样导致你的机器出了问题。

grub 用 chroot 后 grub-install 最快捷。


如果是这样,那么有什么办法在恢复系统的时候保住grub???

因为我如果恢复系统,那么grub就不能用了,试过用安装盘重新安装引导程序,但是最后总是提示说引导程序没有更新,,,用grub-install 则是提示找不到文件。
郁闷。
页: [1] 2
查看完整版本: 关于grub的一个问题。