loadbin是grubutil里的一个新加工具,它可以把各种系统文件转化为Linux内核的格式,从而达到在多个启动管理器里启动的目的。 对于不同的启动文件,loadbin提供相应的头文件, 可以用三种方式启动系统文件,以ntldr为例: 1,直接使用头文件ldntldr.bin。以头文件作为内核,ntldr作为initrd: kernel ldntldr.bin initrd ntldr boot 2,利用mkimage工具把头文件和系统文件结合起来,生成单一的启动文件: mkimage ldntldr.bin ntldr ntldr.bin 然后把ntldr.bin作为内核就行了: kernel ntldr.bin boot 由于不少的启动管理器在启动Linux内核时不会传递正确的DL值,因此需要在头文件里进行设置,你可以使用-x参数在生成单一的启动文件时指定DL值,例如: mkimage -x 0x80 ldntldr.bin ntldr ntldr.bin 有些系统,例如grub2,还支持分区参数,你可以用以下方式来指定: mkimage -x 0x80,0 ldgrub2.bin core.img grub2.bin 这样启动后grub2会自动把根设备设为第一只硬盘第一个主分区(hd0,1)。 如果是在CDROM里启动,可以使用设备号0xe0,比如 mkimage -x 0xe0 ldgrub.bin stage2 grub.bin 这样,grub启动后就可以利用(cd)设备来访问文件了。 3,同2一样,先生成单一的启动文件ntldr.bin,然后可以利用grldr.mbr启动: 安装到mbr: grubinst -b=ntldr.bin DEVICE 生成相应的ntldr.mbr,在boot.ini里启动: grubinst -o -b=ntldr.bin ntldr.mbr 目前支持的启动文件格式: 1,GRUB Legacy 头文件ldgrub.bin,对应的系统文件是stage2 2,GRUB2 头文件是ldgrub2.bin,对应的系统文件是core.img 3,GRUB4DOS和NTLDR 头文件是ldntldr.bin,对应的系统文件是ntldr和grldr 至于启动管理器,只要它支持Linux内核格式,就可以使用loadbin,这其中包括grub legacy, grub2, grub4dos, syslinux/isolinux/pxelinux, lilo等等。 下载地址: http://download.gna.org/grubutil/ |
欢迎光临 无忧启动论坛 (http://wuyou.net/) | Powered by Discuz! X3.3 |