Installation guide
The <bios-device-number> is the BIOS device number. The primary IDE hard drive is numbered 0 and
a secondary IDE hard drive is numbered 1. This syntax is roughly equivalent to that used for devices
by the kernel. For example, the a in hda for the kernel is analogous to the 0 in hd0 for GRUB, the b in
hdb is analogous to the 1 in hd1, and so on.
The <partition-number> specifies the number of a partition on a device. Like the <bios-device-number>,
most types of partitions are numbered starting at 0. However, BSD partitions are specified using
letters, with a corresponding to 0, b corresponding to 1, and so on.
Note
The numbering system for devices under GRUB always begins with 0, not 1. Failing to make
this distinction is one of the most common mistakes made by new users.
To give an example, if a system has more than one hard drive, GRUB refers to the first hard drive as
(hd0) and the second as (hd1). Likewise, GRUB refers to the first partition on the first drive as
(hd0,0) and the third partition on the second hard drive as (hd1,2).
In general the following rules apply when naming devices and partitions under GRUB:
It does not matter if system hard drives are IDE or SCSI, all hard drives begin with the letters hd.
The letters fd are used to specify 3.5 diskettes.
To specify an entire device without respect to partitions, leave off the comma and the partition
number. This is important when telling GRUB to configure the MBR for a particular disk. For
example, (hd0) specifies the MBR on the first device and (hd3) specifies the MBR on the fourth
device.
If a system has multiple drive devices, it is very important to know how the drive boot order is set in
the BIOS. This is a simple task if a system has only IDE or SCSI drives, but if there is a mix of
devices, it becomes critical that the type of drive with the boot partition be accessed first.
9.4 .2. File Names and Blocklist s
When typing commands to GRUB that reference a file, such as a menu list, it is necessary to specify
an absolute file path immediately after the device and partition numbers.
The following illustrates the structure of such a command:
(<device-type><device-number>,<partition-number>)</path/to/file>
In this example, replace <device-type> with hd, fd, or nd. Replace <device-number> with the integer for
the device. Replace </path/to/file> with an absolute path relative to the top-level of the device.
It is also possible to specify files to GRUB that do not actually appear in the file system, such as a
chain loader that appears in the first few blocks of a partition. To load such files, provide a blocklist
that specifies block by block where the file is located in the partition. Since a file is often comprised of
several different sets of blocks, blocklists use a special syntax. Each block containing the file is
specified by an offset number of blocks, followed by the number of blocks from that offset point. Block
offsets are listed sequentially in a comma-delimited list.
The following is a sample blocklist:
0+50,100+25,200+1
Red Hat Ent erprise Linux 5 Inst allat ion G uide
98