我是参考这里的:
http://gentoo-wiki.com/HOWTO_build_a...D_from_scratch
http://gentoo-wiki.com/HOWTO_build_a_LiveCD_from_scratch
来自 http://www.linuxsir.org/bbs/thread321727.html

简单总结一下:
1、修改 grub.conf 和 fstab,使用其适应 livecd 的环境:
代码:default 0
timeout 30
splashimage=/boot/grub/splash.xpm.gz

title=LiveCD
kernel /boot/vmlinuz root=/dev/ram0 \
real_root=/dev/loop0 vga=788 looptype=squashfs cdroot init=/linuxrc \
loop=/livecd.squashfs udev nodevfs cdroot dodmraid
# 这个 livecd.squashfs 就是后面打包的根文件系统
initrd /boot/initrd注意:在 iso9660 里不支持 软链接,所以 menu.lst 的软链接改成复制的
代码:/dev/loop0 / squashfs ro,defaults 0 0
# grub 里把 livecd.squashfs 挂到了 loop0 上
none /proc proc defaults 0 0
none /dev/shm tmpfs defaults 0 02、把完整的根文件系统打包成 squashfs 以节省空间,内核要支持 squashfs
3、新建另一文件夹 target ,把 打包好的根文件系统改名为 livecd.squashfs 放进去
4、把原根文件系统里的 /boot 复制进 target 里,形成 target/boot
5、打包 iso ,并定启动器为 grub :
代码:mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -iso-level 4 -hide-rr-moved -c boot.catalog -o livecd.iso target/