一. 什么是KickStart
KickStart是一种无人职守安装方式。KickStart的工作原理是通过记录典型的安装过程中所需人工干预填写的各种参数,并生成一个名为ks.cfg的文件;在其后的安装过程中(不只局限于生成KickStart安装文件的机器)当出现要求填写参数的情况时,安装程序会首先去查找KickStart生成的文件,当找到合适的参数时,就采用找到的参数,当没有找到合适的参数时,才需要安装者手工干预。这样,如果KickStart文件涵盖了安装过程中出现的所有需要填写的参数时,安装者完全可以只告诉安装程序从何处取ks.cfg文件,然后去忙自己的事情。等安装完毕,安装程序会根据ks.cfg中设置的重启选项来重启系统,并结束安装
二. 什么是PXE
PXE(preboot executeenvironment)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持来自网络的操作系统的启动过程,其启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transferprotocol)或MTFTP(multicast trivial file transferprotocol)协议下载一个启动软件包到本机内存中并执行,由这个启动软件包完成终端基本软件设置,从而引导预先安装在服务器中的终端操作系统。
三. 安装条件与方式
使用PXE+Kickstart就可以制作网络多机器自动安装,网络安装的方式有三种:NFS、HTTP和FTP(下文仅与http为例)。综合起来看,部署这样的自动安装环境需要的条件是:
1.DHCP 服务器
2.TFTP 服务器
3.KickStart所生成的ks.cfg配置文件
4.一台存放系统安装文件的服务器,如 NFS、HTTP 或 FTP 服务器(下文仅与http为例)
5.带有一个 PXE 支持网卡的将安装的主机
四. 安装步骤
1. yum与光盘挂载
mkdir /mnt/cdrom
mount -t iso9660 /dev/cdrom/mnt/cdrom
cd /etc/yum.repos.d
mv CentOS-Base.repoCentos-Base.repo.keep
vim CentOS-Media.repo
编辑CentOS-Media.repo文档在[c6-media]下的baseurlt添加光盘挂载的路径,如
file:///mnt/cdrom
再将下面的enable=0改为enable=1
保存退出
2. 配置TFTPServer
打开配置文件cat/etc/xinetd.d/tftp 修改如下图:
将server_args值改为-s/tftpboot
将disable=yes 改为disable=no
保存退出
mkdir /tftpboot
cp /usr/share/syslinux/pxelinux.0/tftpboot
cd/mnt/cdrom/image/pxeboot/
cp initrd.img vmlinux/tftpboot
cp /mnt/cdrom/isolinux/*.msg/tftpboot
mkdir/tftpboot/pxelinux.cfg
cp /mnt/cdrom/isolinux/isolinux.cfg/tftpboot/pxelinux.cfg/default
由于其默认为只读,先添加可写权限chmod u+w/tftpboot/pxelinux.cfg/default
修改配置 vim/tftpboot/pxelinux.cfg/default如下图:
修改默认标签为linux;
修改linux标签中的地址如图添加ks=http://yourservers ip/ks.cfg
备注:这里为你架设http的ip,若是nfs或者ftp,修改对应ip即可
chkconfig xinetd on
service xinetd start
3. 配置DHCP
vim /etc/dhcp/dhcpd.conf
注意:修改成你的服务器所在ip以及ip段等;其中next-server为tftp服务器ip
chkconfig dhcpdon
service dhcpd start
4.ks.cfg文件生成
5.HTTP设置
cp -rf /mnt/cdrom/*/var/www/html
vim/etc/httpd/conf/httpd.conf
找到 #ServerNamewww.example.com:80 这一行,把注释去掉
chkconfig httpd on
service httpd start
6. 权限设置
chmod -R 777/tftpboot
/etc/init.d/iptablesstop
setenforce 0
service dhcpd restart
service httpd restart
service xinetd restart