Installation guide
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 in-
teger 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 con-
taining 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
This sample blocklist specifies a file that starts at the first block on the partition and uses blocks
0 through 49, 100 through 124, and 200.
Knowing how to write blocklists is useful when using GRUB to load operating systems which re-
quire chain loading. It is possible to leave off the offset number of blocks if starting at block 0.
As an example, the chain loading file in the first partition of the first hard drive would have the
following name:
(hd0,0)+1
The following shows the chainloader command with a similar blocklist designation at the GRUB
command line after setting the correct device and partition as root:
chainloader +1
4.3. The Root File System and GRUB
The use of the term root file system has a different meaning in regard to GRUB. It is important
to remember that GRUB's root file system has nothing to do with the Linux root file system.
The GRUB root file system is the top level of the specified device. For example, the image file
(hd0,0)/grub/splash.xpm.gz is located within the /grub/ directory at the top-level (or root) of the
(hd0,0) partition (which is actually the /boot/ partition for the system).
Next, the kernel command is executed with the location of the kernel file as an option. Once the
Linux kernel boots, it sets up the root file system that Linux users are familiar with. The original
GRUB root file system and its mounts are forgotten; they only existed to boot the kernel file.
Refer to the root and kernel commands in Section 6, “GRUB Commands” for more information.
5. GRUB Interfaces
GRUB features three interfaces which provide different levels of functionality. Each of these in-
4.3. The Root File System and GRUB
83