当用 GRUB 引用特定的设备时,可以使用下面的格式(注意,从语法上来讲,括号和逗号都是非常重要的):
(<type-of-device><bios-device-number>,<partition-number>)
<type-of-device> 指定 GRUB 引导的设备的类型。最常用的两个选项是代表硬盘的 hd 或代表 3.5 寸磁盘的 fd。另外一个较少使用的设备类型是代表网络磁盘的 nd。关于配置 GRUB 从网络引导的说明,你可以访问 http://www.gnu.org/software/grub/manual/。
<bios-device-number> 是 BIOS 设备号码。主 IDE 硬盘编号为 0,次 IDE 硬盘则编号为 1。这个规则和用于内核设备的基本一样。例如,内核所使用的 hda 里的 a 和 GRUB 所使用的 hd0 里的 0 类似,而 hdb 里的 b 和 hd1 里的 1 类似,诸如此类。
<partition-number> 指定设备上的分区的号码。如同 <bios-device-number>,很多类型的分区都是从 0 开始编号的。然而,BSD 分区却由字母指定,如 a 对应 0,b 对应 1,等等。
GRUB 下的设备编号总是从 0,而不是从 1 开始的。这是新用户最常犯的错误之一。
例如,如果系统有一个以上的硬盘,GRUB 会用 (hd0) 来引用第一个硬盘,用 (hd1) 来引用第二个硬盘。GRUB 用 (hd0,0) 引用第一个硬盘里的第一个分区,用 (hd1,2) 引用第二个硬盘里的第三个分区。
GRUB 通常使用下面的规则来命名设备和分区:
不管系统的硬盘驱动器是 IDE 还是 SCSI,所有的硬盘驱动器都用字母 hd 开始。而 fd 用来指定 3.5 寸软盘。
要指定整个设备而不是某个分区,可以把分区号码和逗号都去掉。当 GRUB 为某个特定磁盘配置主引导分区时,这很重要。例如,(hd0) 指定了第一个设备上的主引导分区,(hd3) 指定第四个设备上的主引导分区。
如果系统有多个驱动器设备,在 BIOS 里设置引导顺序就很重要。如果系统只有 IDE 或 SCSI 驱动器,这当然很简单,但是如果两种设备都有的话,使存放引导分区的驱动器先被访问就很关键了。