参考资料:
1. https://www.ibm.com/developerworks/linux/library/l-linuxboot/
2. <<Linux操作系统之奥妙>> 邱世华著
Linux下面导出MBR信息代码如下:
sudo dd if=/dev/sda of=/home/boot.img count=1
其中,count=1表示一个快,及硬盘开始部分的512B,如果使用多个GRUB,
即有的GRUB存在于某个分区的boot sector的话,改变if中输入磁盘的位置应该就可以获取到MBR的信息。(未尝试)
GRUB启动过程:stage1->e2fs_stage1_5->stage2
ls /boot/grub/
1-> stage1
1.5->e2fs_stage1_5、fat_stage1_5、jfs_stage1_5、minix_stage1_5、xfs_stage1_5
2-> stage2
stage1: 当BIOS将控制权交给GRUB时,载入开机管理程序(即MBR的前446Byte)
e2fs_stage1_5(ext2系列文件系统使用该文件): 存放该系统文件系统的格式,
是连接stage1到stage2的信道(MBR后的32K数据存储stage1.5信息)
stage2: GRUB的核心程序,存放于各分区的boot sector中