实验目的:PXE实现多台主机自动化安装操作系统
一:安装前准备:
1.临时清空防火墙策略 iptables
[root@centos6 ~]#iptables -F
2.关闭selinux
3.安装包并启动服务 yum install vsftpd tftp-server dhcp syslinux-nonlinux
DHCP:动态主机配置协议、他是使用UDP协议工作的
tfpt-server:这个是服务器端提供需要的安装的包
xinetd:这个是唤醒tftp这个服务的服务
syslinux:这个程序包是提供pxelinux.0
chkconfig tftp on
service xinetd restart
chkconfig vsftpd on
service vsftpd start
ss -nutlp 检查服务端口是否打开
二、准备yum源
mkdir /var/ftp/pub/centos/6 -pv
mount /dev/sr0 /var/ftp/pub/centos/6
三、准备kickstart文件
我们这里安装system-config-kickstart包,图形化界面配置生成kickstart文件
File –> Open File
安装来源,可以选择光盘安装,http和ftp安装等多种安装来源。其FTP server 地址为本机服务器Ip
Pre-installation Script : 安装前脚本
Post-installation Script : 安装后脚本
安装前后的脚本都自定义。
点击 File - Save ,另存文件到/root/ks6-1.cfg(可更改文件名字)
注意:如果存在repo –name=”CentOS” –baseurl=cdrom:sr0 –cost=100这行,删除掉。
cp /root/ks6-1.cfg /var/ftp/pub/ksdir/ks6-1.cfg
ksvalidator /var/ftp/pub/ksdir/ks6-1.cfg
chmod +r /var/ftp/pub/ksdir/*.cfg
4 配置DHCP服务
cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf
chkconfig dhcpd on
service dhcpd restart
5 准备PXE相关文件
- cp /usr/share/syslinux/{pxelinux.0,menu.c32} /var/lib/tftpboot/
- cp /misc/cd/images/pxeboot/{initrd.img,vmlinuz} /var/lib/tftpboot/
- mkdir pxelinux.cfg
- cp /misc/cd/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
6 准备启动菜单
vim /var/lib/tftpboot/pxelinux.cfg/default
本实验操作在虚拟机上,在配置DHCP服务器确保dhcp 服务器网卡和推送安装系统的客户机网卡为同一个网卡(此虚拟机网卡选择为仅主机模式,不开起DHCP服务),确保本机dhcp服务器能自动分配地址到客户机。
实验结果:
新建一台新的虚拟机当作客户机,开机启动时选择网卡启动