[内核实验]用isolinux制作可启动的Linux CD

 

myiso
|
|---isolinux
| |
| |---isolinux.bin
| |__isolinux.cfg
|---bzImage
|---initrd.gz

bzImage是编译出来的内核,位置在$(KERNEL_SRC)/arch/i386/boot/bzImage

initrd.gz是根文件系统。为了方便可以从系统/boot中拷贝一份


isolinux.cfg内容如下

prompt 1
timeout 100
default myiso

label myiso
kernel /bzImage
append initrd=/initrd.gz load_ramdisk=1 prompt_ramdisk=0 ramdisk_size=60000 rw root=/dev/ram

最后利用mkisofs命令产生iso

mkisofs -o myiso.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table ./

#-o 是输出文件

#-b 是设置 El Torito boot image name   也就是ISO bootloader

#-c 是设置 El Torito boot catalog name  分类文件会在目标iso中出现,制作可启动的CD,该项设置是必须的

#hard-disk-boot             Boot image is a hard disk image
# -no-emul-boot               Boot image is 'no emulation' image  #非模拟硬盘模式
#-boot-load-size #           设置启动扇区的数目
# -boot-info-table            Patch boot image with info table

指定 56-byte 表格(CD-ROM layout)打补丁到启动文件(isolinux.bin)的offset 8 位置.


更详细的参数说明参看http://www.knoppix.net/wiki/Mkisofs

 

最后可以输入 qemu -cdrom myiso.iso 测试新内核

posted on 2011-11-20 16:54  lurker0  阅读(902)  评论(0编辑  收藏  举报

导航