> CentOS > CentOS入门 >

定制CentOS6.3 minimal.iso自动化安装ISO

1.下载安装CentOS-6.3-x86_64-minimal.iso,当然也可以定制安装DVD版,选择常用的组件

2.安装制作发行版所需的基本软件包

yum -y install createrepo mkisofs

3.生成安装系统所需的rpm文件列表,如果是 minimal 可以跳过此步,直接把Packages拷贝到/data/OS/

  cd /root
  #英文版:
  cat install.log | grep Installing | sed 's/Installing //g' > /root/packages.list
   
  #中文版:
  cat install.log | grep 安装 | sed 's/安装 //g' > /root/packages.list

4.创建定制工作目录

  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包就可以了

5.配置kickstart脚本

/data/OS/isolinux/ks.cfg见附件下载,我的文件比较简单.复杂需求可以自行定义

6.生成comps.xml

  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/

7.让系统从kickstart配置启动安装

  vi /data/OS/isolinux/isolinux.cfg #修改isolinux.cfg中第一个label
  #initrd=initrd.img 修改成下面的
  append ks=cdrom:/isolinux/ks.cfg initrd=initrd.img

8.生成ISO文件

  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

9.刻录

刻录成光盘可以直接进行安装,或者用VM虚拟机安装ISO文件.不要刻录成U盘安装,这样会有出问题

10.ks脚本访问cd文件

  %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%

11.其他

可以在图形界面系统上,使用 system-config-kickstart 这个界面软件,生成ks的主要配置文件

可以使用 yum-downloadonly 这个插件下载rpm的依赖包非常方便

在ks.cfg中启动mysql 需要 sleep一下,例如 sleep 10 这个也是试好几次才知道的!

u盘挂载通常是 sda4

下载:定制CentOS脚本文件

本文出自 9iu.org,转载时请注明出处及相应链接。

本文永久链接: http://www.9iu.org/2013/04/15/diy_centos_6.html

 


(责任编辑:IT)