====== GRUB ====== * [[:linux:raid#boot-system-with-grub-from-raid1|GRUB + RAID1]] * [[linux:grub::hacking|GRUB hacking for fun and profit]] ===== In a nutshell: ===== **stage1:** The core GRUB functionality stored in the MBR. (512 bytes) **stage1.5:** (optional) stage1.5 is only written if it is necessary, and it goes into the extended area after the MBR. (30KB) If you're using a filesystem that can't be relied upon to store a file as an easily readable block on disk (i.e. pretty much every FS other than ext2/3), then you need 1.5. Loading 1.5 loads actual filesystem drivers as well as extended device drivers for things like LVM and, I would assume, software RAID as well. **stage2:** This is the full GRUB functionality. This is the portion that actually lives on your boot partition and needs to have the original file around. (You can, if you choose, delete the files stage1, and stage1.5 from disk after installing GRUB, but stage 2 must stay there.) This is the portion that does most of the heavy lifting, loads the menu.lst, etc. ===== Failover boot ===== default saved fallback 1 title Debian GNU/Linux, kernel root (hd0,0) kernel /vmlinuz-2.6.19.7 root=/dev/md1 ro panic=30 oops=panic initrd /initrd.img-2.6.19.7 savedefault 1 Kernel num '1' is the one you know it boots. New one is in place 0, set default to 0 # grub-set-default 0