[NTLUG:Discuss] GRUB boot process

Robert Citek robert.citek at gmail.com
Sat Oct 27 21:14:42 CDT 2007


On 10/27/2007 04:59 PM, Jerome Haltom wrote:
> Stage 1 goes on the MBR. Stage 1.5 goes in the boot sector. Stage 1.5
> has a file system module embedded into it which is capable of reading
> from /boot. Stage 2 is loaded from /boot by Stage 1.5. Stage 2 loads
> menu.lst, has other file system drivers, and can finally display a
> prompt and boot the system

I'm still not quite clear about this.  If I understand you correctly:

- stage 1 is in the first 512 of the drive (e.g. /dev/hda)
- stage 1.5 is in the first 512 bytes of the partition (e.g. /dev/hda1)
- stage 2 is in the /boot/grub directory (e.g. on /dev/hda1/ mounted at /)

I was under the impression that any boot loading code had to be smaller 
than 446 bytes[1].  Yet, stage1 is larger at 512 bytes, which doesn't 
leave any room for a partition table:

-rw-r--r-- 1 root root    512 2007-09-25 13:42 /boot/grub/stage1

Also, I was under the impression that the boot sector was also limited 
to 512 bytes, which wouldn't be enough room for any of these stage1_5 files:

-rw-r--r-- 1 root root   7776 2007-09-25 13:42 /boot/grub/e2fs_stage1_5
-rw-r--r-- 1 root root   7504 2007-09-25 13:42 /boot/grub/fat_stage1_5
-rw-r--r-- 1 root root   8320 2007-09-25 13:42 /boot/grub/jfs_stage1_5
-rw-r--r-- 1 root root   7008 2007-09-25 13:42 /boot/grub/minix_stage1_5
-rw-r--r-- 1 root root   9216 2007-09-25 13:42 /boot/grub/reiserfs_stage1_5
-rw-r--r-- 1 root root   9288 2007-09-25 13:42 /boot/grub/xfs_stage1_5

What am I missing?  Are my understanding of the MBR and boot sector 
incorrect?  Did I misunderstand what you wrote?  Or something else?

[1] http://en.wikipedia.org/wiki/Master_boot_record

Regards,
- Robert




More information about the Discuss mailing list