平时用的CentOS太大了,所以来了一下减肥。以centos5.6做的测试,其他版本步骤都差不多。
1,首先一个你最小化的安装系统,我是只安装了@base库
2,yum install -y createrepo mkisofs # createrepo 这个是要更新仓库的依赖性
3,在安装完的Linux系统中/root/下有install.log
awk '/Installing/ {print $2}' install.log|sed 's/^[0-9]*://' >/root/packages.list
4, 创建自己的目录 mkdir -p /davis/OS/
mount /dev/cdrom /mnt 挂载磁盘到/mnt下
rsync -a --exclude=CentOS /mnt/* /davis/OS/
5, 复制精简后的rpm包
#!/bin/bash
cd /root
awk '/Installing/ {print $2}' install.log|sed 's/^[0-9]*://' >/root/package.txt
DVD='/mnt/CentOS'
PACKDIR='/root/package.txt'
NEW_DVD='/davis/OS/CentOS/'
while read LINE
do
cp ${DVD}/${LINE}*.rpm /${NEW_DVD} || echo "$LINE don't cp......."
done < package.txt
rm -f package.txt
执行脚本,把已经安装的包都复制到/davis/OS/CentOS
6,修改anaconda-ks.cfg,把文件放在/davis/OS/下 (这里不做介绍,我是从网上拔下来的改了一下)
7,修改isolinux/isolinux.cfg
label linux
append ks=cdrom:/ks.cfg initrd=initrd.img
8,cd /davis/OS/ && createrepo -g repodata/comps.xml .
9, 制作ISO文件
mkisofs -o /root/CentOS5.6.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -T /davis/OS/