0. 准备一个8GB的u盘,准备centos的iso,我用的是dvd的iso,可以从 下载
1. 制作u盘的系统需要安装了syslinux,我的版本是3.11
2. u盘分区成如下格式
fdisk -l /dev/sdb
Disk /dev/sdb: 8000 MB, 8000110592 bytes
255 heads, 63 sectors/track, 972 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System 8./dev/sdb1 * 1 65 522081 b W95 FAT32
/dev/sdb2 66 972 7285477+ c W95 FAT32 (LBA)
分别格式化两个分区
mkfs.vfat /dev/sdb1
mkfs.ext2 /dev/sdb2
mount DATA分区,mount第一个iso,复制一些数据到DATA分区,再把iso都复制到DATA分区,然后umount DATA分区
mkdir -p /media/iso /media/DATA
mount /dev/sdb2 /media/DATA
mount -o loop /path/to/CentOS-6.0-x86_64-bin-DVD1.iso /media/iso/
cp -rv /media/iso/images /media/DATA
cp -rv /path/to/CentOS-6.0-x86_64-bin-DVD*.iso /media/DATA
umount /media/DATA
覆盖u盘的mbr,安装syslinux以及启动需要的内核文件
dd if=/usr/lib/syslinux/mbr.bin of=/dev/sdb
syslinux -s /dev/sdb1
mkdir -p /media/BOOT 4.mount /dev/sdb1 /media/BOOT
cp /media/iso/isolinux/isolinux.bin /media/BOOT/syslinux.bin
cp /media/iso/isolinux/isolinux.cfg /media/BOOT/syslinux.cfg
cp /media/iso/isolinux/vmlinuz /media/BOOT
cp /media/iso/isolinux/initrd.img /media/BOOT
编辑/media/BOOT/syslinux.cfg
default CentOS
prompt 0
label CentOS
kernel vmlinuz
append initrd=initrd.img method=hd:sdb2:/
最后umount BOOT分区和iso就完成了去测试 OK