10 GRUB image files
GRUB consists of several images: two essential stages, optional stages
called Stage 1.5, one image for bootable CD-ROM, and two network
boot images. Here is a short overview of them. See Internals, for
more details.
- stage1
- This is an essential image used for booting up GRUB. Usually, this is
embedded in an MBR or the boot sector of a partition. Because a PC boot
sector is 512 bytes, the size of this image is exactly 512 bytes.
All stage1 must do is to load Stage 2 or Stage 1.5 from a local
disk. Because of the size restriction, stage1 encodes the
location of Stage 2 (or Stage 1.5) in a block list format, so it never
understand any filesystem structure.
- stage2
- This is the core image of GRUB. It does everything but booting up
itself. Usually, this is put in a filesystem, but that is not required.
- e2fs_stage1_5
- fat_stage1_5
- ffs_stage1_5
- jfs_stage1_5
- minix_stage1_5
- reiserfs_stage1_5
- vstafs_stage1_5
- xfs_stage1_5
-
These are called Stage 1.5, because they serve as a bridge
between stage1 and stage2, that is to say, Stage 1.5 is
loaded by Stage 1 and Stage 1.5 loads Stage 2. The difference between
stage1 and *_stage1_5 is that the former doesn't
understand any filesystem while the latter understands one filesystem
(e.g. e2fs_stage1_5 understands ext2fs). So you can move the
Stage 2 image to another location safely, even after GRUB has been
installed.
While Stage 2 cannot generally be embedded in a fixed area as the size
is so large, Stage 1.5 can be installed into the area right after an MBR,
or the boot loader area of a ReiserFS or a FFS.
- stage2_eltorito
- This is a boot image for CD-ROMs using the no emulation mode in
El Torito specification. This is identical to Stage 2, except that
this boots up without Stage 1 and sets up a special drive `(cd)'.
- nbgrub
- This is a network boot image for the Network Image Proposal used by some
network boot loaders, such as Etherboot. This is mostly the same as
Stage 2, but it also sets up a network and loads a configuration file
from the network.
- pxegrub
- This is another network boot image for the Preboot Execution Environment
used by several Netboot ROMs. This is identical to nbgrub, except
for the format.