LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 891|回复: 9

一个grub的问题,大家来帮忙解释一下

[复制链接]
发表于 2005-7-2 22:49:55 | 显示全部楼层 |阅读模式
我在linux下用fdisk -l的时侯显示linux所在的分区是hdb1,但当我进入menu1.list看的时候,linux启动的选项为(hd0,0);按理说应该是(hd1,0)才对呀,记成(hd0,0)就不能启动linux。
ps:双硬盘,主盘C:装2000,从盘装了linux,两个系统是分开来装的,所以每次都要进入cmos设置切换两个系统。
发表于 2005-7-3 12:12:07 | 显示全部楼层
(hd0,0)是指你的grub被安装在了第一块硬盘hda的MBR上了。不用每次修改bios的设置,只要修改grub.conf的参数就可以了。具体的看置顶贴里的内容。通过grub来引导windows和linux。
回复 支持 反对

使用道具 举报

发表于 2005-7-3 12:20:36 | 显示全部楼层
see /boot/grup/device.map
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-7-3 14:37:53 | 显示全部楼层
但我在安装的时候我是先用主盘装2000,从盘没通电,然后同样的方法装linux在从盘,那么grub应该是装在hd1,0的mbr上吧。
回复 支持 反对

使用道具 举报

发表于 2005-7-3 17:41:32 | 显示全部楼层
如果是这样的话,你应该在linux下重新安装grub,把它安装到主硬盘的MBR上,这样就可以在启动的时候手动切换选择启动哪一个OS啦,多方便呀。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-7-4 08:13:42 | 显示全部楼层
Post by 7dehao
如果是这样的话,你应该在linux下重新安装grub,把它安装到主硬盘的MBR上,这样就可以在启动的时候手动切换选择启动哪一个OS啦,多方便呀。

参照feng_ye兄的"双硬盘grub,map 功能应用 ── 小菜鸟与GRUB的故事",已经能够引导系统了,但我就是弄不明白linux启动的选项为什么为(hd0,0);却不是(hd1,0)。因为我用fdisk -l看时,2000是在(hda,1),linux是在(hdb,1)。
回复 支持 反对

使用道具 举报

发表于 2005-7-4 09:24:57 | 显示全部楼层
hda在grub中就是hd0,hdb在grub中就是hd1。要知道详细的内容需要看#info grub,个人建议还是在搜索帖子或google比较方便
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-7-5 09:20:15 | 显示全部楼层
Post by 7dehao
hda在grub中就是hd0,hdb在grub中就是hd1。要知道详细的内容需要看#info grub,个人建议还是在搜索帖子或google比较方便

给版主看一下我的fdisk -l和menu.1st就知道我的问题是什么了?
[root@redhat /]# fdisk -l

Disk /dev/hda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/hda1   *         1       765   6144831    7  HPFS/NTFS
/dev/hda2           766      9729  72003330    f  Win95 Ext'd (LBA)
/dev/hda5           766      1530   6144831    b  Win95 FAT32
/dev/hda6          1531      2805  10241406    b  Win95 FAT32
/dev/hda7          2806      4080  10241406    b  Win95 FAT32
/dev/hda8          4081      6630  20482843+   b  Win95 FAT32
/dev/hda9          6631      9180  20482843+   b  Win95 FAT32
/dev/hda10         9181      9729   4409811    b  Win95 FAT32

Disk /dev/hdb: 30.7 GB, 30736613376 bytes
255 heads, 63 sectors/track, 3736 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/hdb1   *         1      1210   9719293+  83  Linux
/dev/hdb2          1277      3736  19759950    f  Win95 Ext'd (LBA)
/dev/hdb3          1211      1275    522112+  82  Linux swap
/dev/hdb5          1277      2551  10241406    b  Win95 FAT32
/dev/hdb6          2552      3190   5132736    b  Win95 FAT32
/dev/hdb7          3191      3736   4385713+   b  Win95 FAT32

/boot/grub/menu.1st
default=1
timeout=10
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
title Red Hat Linux (2.4.20-8)
        root (hd0,0)
        kernel /boot/vmlinuz-2.4.20-8 ro root=LABEL=/
        initrd /boot/initrd-2.4.20-8.img
title Windows2000
        map (hd0) (hd1)
        map (hd1) (hd0)
        rootnoverify (hd1,0)
        chainloader +1
        makeactive
        boot

上面的设置也能成功,我就是不明白为什么linux的启动是(hd0,0)却不是(hd1,0)(看红色部分),请版主指教.
回复 支持 反对

使用道具 举报

发表于 2005-7-5 10:03:41 | 显示全部楼层
我现在想知道的是你现在进入linux或windows时是否还要每次都设置bios?
根据《双硬盘grub,map 功能应用 ── 小菜鸟与GRUB的故事》上所讲,双硬盘系统中存在hd0和hd1在grub的列表中被互置的情况(我也是双硬盘,但是没有碰到过,但作者有这么说),如果真的是这样的话,你的问题也就是正常的了,这可能是grub的一个bug。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-7-9 09:35:09 | 显示全部楼层
照着上面的配置,我已经不用进入bios设置了,如果我将linux的那个项改为(hd1,0)的话,就不能启动。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表