自动化kickstart
自动化安装系统的过程
服务端地址 eth0 192.168.1.102 eth1 10.0.0.61
空白服务器 etf0 192网段 eth1和服务端在一个网段
安装步骤:
[root@data-1-2 ~]# getenforce
[root@data-1-2 ~]# /etc/init.d/iptables stop
安装DHCP服务
[root@data-1-2 ~]# yum install dhcpd
[root@data-1-2 ~]# vim /etc/dhcp/dhcpd.conf
subnet 10.0.0.0 netmask 255.255.255.0 {
range 10.0.0.100 10.0.0.200;
option subnet-mask 255.255.255.0;
default-lease-time 21600;
max-lease-time 43200;
next-server 10.0.0.61;
filename "/pxelinux.0";
}
安装tftp服务
[root@data-1-2 ~]# yum install tftp-server -y
[root@data-1-2 ~]# sed -i '14s#yes#no#' /etc/xinetd.d/tftp
[root@data-1-2 ~]# /etc/init.d/xinetd start
配置http服务
[root@data-1-2 ~]# yum install httpd -y
[root@data-1-2 Centos-6.3]# sed -i "277i ServerName 127.0.0.1:80" /etc/httpd/conf/httpd.conf
[root@data-1-2 Centos-6.3]# /etc/init.d/httpd start
[root@data-1-2 Centos-6.3]# mkdir /var/www/html/Centos-6.3
[root@data-1-2 Centos-6.3]# mount /dev/cdrom /var/www/html/Centos-6.3/
配置支持PXE启动程序
[root@data-1-2 Centos-6.3]# yum install syslinux
[root@data-1-2 Centos-6.3]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@data-1-2 Centos-6.3]# cp -a /var/www/html/Centos-6.3/isolinux/* /var/lib/tftpboot/
新建一个pxelinux.cfg目录,存放客户端的配置文件
[root@data-1-2 Centos-6.3]# mkdir -p /var/lib/tftpboot/pxelinux.cfg
[root@data-1-2 Centos-6.3]# cp /var/www/html/Centos-6.3/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
先生成一个密码备用
[root@data-1-2 ~]# grub-crypt
Password:
Retype password:
$6$GisvlztAcMJr8lT5$2j4SPjsUsRXb9RGfLD9hxpciEg0OowpPeMJLl5nDvfFmcoNhm6vIDkQfY8MLu6490NawnttfVNynIAMUg1mHx.
[root@data-1-2 ~]# mkdir /var/www/html/ks_config
[root@data-1-2 ks_config]# vim /var/www/html/ks_config/Centos-6.3-ks.cfg 配置启动系统内容以及自动安装参数,包名等
# Kickstart Configurator for Centos 6.3 by yao zhao install url --url="http://10.0.0.61/Centos-6.3/" text lang en_US.UTF-8 keyboard us zerombr bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet" network --bootproto=dhcp --device=eth1 --onboot=yes --noipv6 --hostname=Centos6 timezone --utc Asia/Shanghai authconfig --enableshadow --passalgo=sha512 rootpw --iscrypted $6$GisvlztAcMJr8lT5$2j4SPjsUsRXb9RGfLD9hxpciEg0OowpPeMJLl5nDvfFmcoNhm6vIDkQfY8MLu6490NawnttfVNynIAMUg1mHx. clearpart --all --initlabel part /boot --fstype=ext4 --asprimary --size=200 part swap --size=1024 part / --fstype=ext4 --grow --asprimary --size=200 firstboot --disable selinux --disabled firewall --disabled logging --level=info reboot %packages @base @compat-libraries @debugging @development tree nmap sysstat lrzsz dos2unix telnet ####脚本文件可以做初始化脚本,等等下载东西## %post wget -O /tmp/optimization.sh http://10.0.0.7/ks_config/optimization.sh &>/dev/null #########前提把脚本什么的都放在自动安装目录下 /bin/sh /tmp/optimization.sh %end
整合编辑default配置文件
[root@data-1-2 ks_config]# vim /var/lib/tftpboot/pxelinux.cfg/default
default ks
prompt 0
label ks
kernel vmlinuz
append initrd=initrd.img ks=http://10.0.0.61/ks_config/Centos-6.3-ks.cfg ksdevice=eth1 #告诉程序ks.conf文件在哪 ###网卡从哪启动
检测能否访问到,如果访问不到PXE就不能安装
[root@data-1-2 pxelinux.cfg]# curl http://10.0.0.61/ks_config/Centos-6.3-ks.cfg
############################
可以开始安装操作系统了另外注意在安装系统的时候在开启DHCP TFTP服务,预防不经意之间把重启的服务器给重装了系统。