自动化运维(1)-- 定制自动安装CentOS系统
1、安装制作系统镜像所需要的工具
yum -y install anaconda repodata createrepo mkisofs rsync
2、创建光盘挂载目录、资源重构目录、自定义数据库目录
mkdir /mnt/cdrom mkdir /opt/ISO mkdir /opt/ISO/mydata
3、挂载CentOS系统光盘或ISO镜像文件,这里挂载ISO镜像
mount -o loop -t iso9660 /you/path/CentOS-6.4-x86_64-bin-DVD1.iso /mnt/cdrom #红色为系统镜像所在位置
4、拷贝重构系统所需的必须数据和文件
rsync -a --exclude=Packages/ /mnt/cdrom /opt/ISO #--exclude=Packages/排除此目录 mkdir -p /opt/ISO/{Packages,repodata} #创建yum仓库
5、拷贝定制的的软件包到ISO重构目录(/opt/ISO/Packages)
#此脚本是复制当前系统所用到的软件包,也可自行放入自己需要的软件包
#!/bin/bash cd /root awk '/Installing/{print $2}' install.log | sed 's/^*://g' > package.txt PACKAGES='/mnt/cdrom/Packages' PACKDIR='/root/package.txt' NEW_PACKAGES='/opt/ISO/Packages' while read LINE do cp ${PACKAGES}/${LINE}*.rpm /${NEW_PACKAGES} || echo "$LINE don't cp......." done < package.txt rm -f package.txt
6、系统自响应安装,创建自响应文件 ks.cfg ,把此文件放在/opt/ISO/isolinux/ks.cfg ,文件内容如下
# Kickstart file automatically generated by anaconda.install cdrom lang en_US.UTF-8 keyboard us #network --onboot yes --device eth0 --bootproto=static --ip=192.168.1.1 --netmask=255.255.255.0 --noipv6 network --onboot yes --device eth0 --bootproto=dhcp --noipv6 rootpw worker firewall --disabled authconfig --enableshadow --passalgo=sha512 selinux --enforcing timezone --utc Asia/Shanghai bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet" reboot zerombr yes clearpart --all --initlabel part /boot --fstype=ext4 --size=300 part swap --recommended part pv.008003 --grow --size=200 volgroup vg_root --pesize=4096 pv.008003 logvol / --fstype=ext4 --name=LogVol00 --vgname=vg_root --size=51200 logvol /business --fstype=ext4 --name=logvol01 --vgname=vg_root --grow --size=100 %packages @core @server-policy %pre echo "Installing MyData" mkdir /tmp/mydata cp /mnt/source/mydata/autowebv1.0.tar.gz /tmp/mydata %post --nochroot cp /mnt/source/mydata/autowebv1.0.tar.gz /mnt/sysimage/business/autowebv1.0.tar.gz cd /mnt/sysimage/business/ tar zxvf autowebv1.0.tar.gz %post cd autowebv1.0 sh setip.sh umount /dev/cdrom eject %end
7、修改启动安装导向文件/opt/ISO/isolinux/isolinux.cfg,下面为修改后内容,红色为修改位置
default vesamenu.c32 #prompt 1 timeout 50 ##等待时间 display boot.msg menu background splash.jpg menu title Welcome to use CentOS 6.4! menu color border 0 #ffffffff #00000000 menu color sel 7 #ffffffff #ff000000 menu color title 0 #ffffffff #00000000 menu color tabmsg 0 #ffffffff #00000000 menu color unsel 0 #ffffffff #00000000 menu color hotsel 0 #ff000000 #ffffffff menu color hotkey 7 #ffffffff #ff000000 menu color scrollbar 0 #ffffffff #00000000 label linux #用ks.cfg自响应方式安装 menu label ^Auto Install Xlogin Linux System menu default kernel vmlinuz append ks=cdrom:/isolinux/ks.cfg initrd=initrd.img label vesa menu label Install system with ^basic video driver kernel vmlinuz append initrd=initrd.img xdriver=vesa nomodeset label rescue menu label ^Rescue installed system kernel vmlinuz append initrd=initrd.img rescue label local menu label Boot from ^local drive localboot 0xffff label memtest86 menu label ^Memory test kernel memtest append -
8、创建软件仓库
cd /opt/ISO declare -x discinfo=$(head -1 .discinfo) mv /opt/ISO/repodata/*x86_64-comps.xml /opt/ISO/repodata/c6-x86_64-comps.xml createrepo -g /opt/ISO/repodata/c6-x86_64-comps.xml /opt/ISO
9、重构系统,生成ISO镜像
mkisofs -o CentOS-6.4_64_mini.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -T .
10、用生成的ISO 刻录光盘
浙公网安备 33010602011771号