是否厌倦了乏味的安装系统操作,制作基于kickstart的自动安装光盘是个不错的选择。
要使用kickstart,只需:
1.筹备安装树。
2.创建一个kickstart文件。
3.创建一个带有kickstart文件的引导盘,或在网络上提供该文件。
4.开始kickstart安装。
由于系统每次,在安装完成后,会在/root目录下生成install.log文件,里面包含了本次安装所用的软件包,我们通过以下命令把包名提取到一个临时文件下,约定临时文件为FILE='/tmp/packlist.txt',目标目录为DDIR='/data/myiso',软件包源目录为SDIR='/media/cdrom'
- cat /root/install.log |cut -d' ' -f2 |cut -d':' -f2 > /tmp/paklist.txt
在目标目录创建相应文件夹
- mkdir -p $DDIR/{Server,VT,Cluster,ClusterStorage} 2>> /tmp/error.txt
从源目录复制软件包到目标相应目录
- while read LINE; do
- for I in Server VT Cluster ClusterStorage;do
- cp -r $SDIR/$I/$LINE* $DDIR/$I/
- done
- done < $FILE
- cp -r $SDIR/{images,isolinux,.treeinfo,.discinfo,EULA,GPL,TRANS.TBL,eula.en_US} $DDIR
创建软件仓库
- [ -e /usr/bin/createrepo ] || rpm -i $DDIR/Server/createrepo-*.noarch.rpm &> /dev/null
- for REPODIR in Server VT Cluster ClusterStorage;do
- createrepo -g $SDIR/$REPODIR/repodata/comps-rhel5-*.xml $DDIR/$REPODIR
- done
修改$DDIR/isolinux 各文件权限为可写
- find $DDIR/isolinux -name "*" -exec chmod u+w {} \;
与install.log文件同时生成的还有/root/anaconda-ks.cfg文件,它记录的便是系统安装信息,我们通过修改它生成kickstart文件
- cp /root/anaconda-ks.cfg $DDIR/ks.cfg
- sed -i '/^# not g/,/^%packages/s/^#\([a-z].*\)/\1/g' $DDIR/ks.cfg
- sed -i -e 's/^install$/text/g' -e '/^%packages/i \reboot' $SDDIR/ks.cfg
- sed -i -e 's/^url.*$/cdrom/g' -e 's/^nfs.*$/cdrom/g' $DDIR/ks.cfg
这里使用mkisofs生成引导光盘
- if [ ! -e /usr/bin/mkisofs ];then
- rpm -i ${SDIR}/Server/mkisofs-*.i386.rpm &> /dev/null
- fi
- cd /data
- mkisofs -o My_RHEL.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -T myiso/
到此我们已经制作了一个名为My_RHEL.iso的安装光盘,其它操作与普通安装无异,只不过此时,我们不用在一个一个选择了^_^