在很多资料上介绍grub的引导过程时,都是:
bios->MBR->boot loader
boot loader是grub或者lilo。但是他是放在什么位置?很多资料上都没有标明。
通过阅读文档http://www.iamting.com/user1/1032/archives/2006/3089.html。中制作grub引导软盘的过程:
cd /boot/grub
dd if=stage1 of=/dev/fd0 bs=512 count=1
dd if=stage2 of=/dev/fd0 bs=512 seek=1
其实就是把stage1拷贝到软盘的头512字节当中——即MBR当中,然后再把stage2文件拷贝到头512字节后。
因此可以推测:
对于grub来说,放在mbr的stage1的内容即是去读取头512字节的stage2的内容,这才是把boot loader载入内存。让他去引导内核。