title: 定制CentOS6.3 minimal.iso CreateTime: 2013-04-15 15:57:00 UpdateTime: 2013-04-15 15:57:00 CategoryName: web --- --- title: "定制CentOS6.3 minimal.iso" date: 2013-04-15T15:57:00+08:00 draft: false tags: ["web"] categories: ["web"] author: "springrain" --- ## 下载ISO 下载安装CentOS-6.3-x86_64-minimal.iso,当然也可以定制安装DVD版,选择常用的组件 ## 安装软件包 安装制作发行版所需的基本软件包 ```shell yum -y install createrepo mkisofs ``` ## 生成安装系统所需的rpm文件列表 生成安装系统所需的rpm文件列表,如果是 minimal 可以跳过此步,直接把Packages拷贝到/data/OS/ ```shell cd /root #英文版: cat install.log | grep Installing | sed 's/Installing //g' > /root/packages.list #中文版: cat install.log | grep 安装 | sed 's/安装 //g' > /root/packages.list ``` ## 创建定制工作目录 ```shell mkdir -p /mnt/cdrom mkdir -p /data/OS #mount /dev/cdrom /mnt/cdrom mount -o loop ~/CentOS-6.3-x86_64-minimal.iso /mnt/cdrom #rsync -a --exclude=Packages /mnt/cdrom /data/OS #mkdir /data/OS/Packages cp -rf /mnt/cdrom/* /data/OS/ cp -rf /mnt/cdrom/.discinfo /data/OS/ cp -rf /mnt/cdrom/.treeinfo /data/OS/ #如果你使用的定制好的桌面版,需要复制定制安装好的rpm包,脚本cprmps.sh在附件下载,执行前 清空 /data/OS/Packages/ 下的所有rpm包, #执行cprmps.sh过程中出现报错不用理会,只要最后/data/OS/Packags/ 下有定制的rpm包就可以了 ``` ## 配置kickstart脚本 /data/OS/isolinux/ks.cfg,我的文件比较简单.复杂需求可以自行定义. ## 生成comps.xml ```shell cd /data/OS #重命名xml文件,或者是以comps.xml结尾的文件 mv repodata/*-x86_64.xml repodata/comps.xml declare -x discinfo=`head -1 .discinfo` createrepo -g repodata/comps.xml /data/OS/ ``` ## 让系统从kickstart配置启动安装 ```shell vi /data/OS/isolinux/isolinux.cfg #修改isolinux.cfg中第一个label #initrd=initrd.img 修改成下面的 append ks=cdrom:/isolinux/ks.cfg initrd=initrd.img ``` ## 生成ISO文件 ```shell mkisofs -o CentForOS6.3.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -T /data/OS/ #生成MD5检验码 /usr/bin/implantisomd5 /data/OS/CentForOS6.3.iso ``` ## 刻录注意 ~~刻录成光盘可以直接进行安装,或者用VM虚拟机安装ISO文件.不要刻录成U盘安装,这样会有出问题~~ ## ks脚本访问cd文件 ```shell %post --nochroot mkdir -p /mnt/source mount -o ro /tmp/cdrom /mnt/source cp -a /mnt/source/itest /mnt/sysimage/root/ umount /mnt/source %end% ``` ## 其他 可以在图形界面系统上,使用 system-config-kickstart 这个界面软件,生成ks的主要配置文件 可以使用 yum-downloadonly 这个插件下载rpm的依赖包非常方便 在ks.cfg中启动mysql 需要 sleep一下,例如 sleep 10 这个也是试好几次才知道的! u盘挂载通常是 sda4