PXE到底是什么东西。这个就是当你需要安装多台机器系统的时候,利用客户机在BIOS内设置网卡启动,在网络内搜索DHCP服务器,服务器通过给客户机分配IP,识别客户机,通过tftp服务,给客户机发送linux内核,初始化镜像文件,PXE引导程序文件,和之前做好的ks.cfg安装系统配置文件,通过FTP服务器共享光盘内容,用于实现多台机器开机后无人值守自动装机的效果。
下面的搭建过程:
1.准备工作
>mount /dev/sr0 /media/cdrom #挂载光盘
>yum -y install tftp-server syslinux dhcp* vsftpd* system-config-kickstart #安装这些软件
>
>/etc/init.d/iptables stop
>setenforce 0
整理思路,需要用到的服务分别为 dhcp ftp tftp-server
2.tftp-server修改
>sed -i "10 s/yes/no/" /etc/xinetd.d/tftp 无需等待,同一时间可有多个客户端连接
>sed -i "14 s/yes/no/" /etc/xinetd.d/tftp 开启TFTP服务
>/etc/init.d/xinetd start 开启xinetd服务
3.ftp服务
准备linux内核,初始化镜像文件,PXE引导程序,拷贝到/var/lib/tftpboot/下。
内核和初始化镜像文件在/media/cdrom/isolinux/下,分别为:
vmlinuz 是Linux内核文件
initrd.img 是初始化镜像文件
PXE引导程序的路径为:/usr/share/syslinux/pxelinux.0
运行system-config-kickstart,制作ks.cfg,启动菜单文件,保存在/media下。
制作文件时,需注意FTP选项,上面写FTP服务器IP,下面写cdrom
在/var/lib/tftpboot/下创建pxelinux.cfg目录,复制/media/cdrom/isolinux/isolinux.cfg,到pxelinux.cfg下,并重命名为default
chmod 755 default 给default权限,否则本文件为只读
修改default文件:
修改默认安装的版本:
sed -i “1 s/label/linux/” /var/lib/tfptboot/pxelinux.cfg/default
添加ks文件路径:
在第九行的append后面添加 ks=ftp://192.168.137.11/ks.cfg
修改主配置文件:
在主配置文件中加入:anon_root=/media 指定匿名用户家目录为/media
/etc/init.d/vsftpd start 启动FTP服务
4.DHCP服务
修改主配置文件 /etc/dhcp/dhcpd.conf:
default-ease-time 21600; 默认租约时间
max-lease-time 43200; 最大租约时间
log-facility local7; 日志等级7
subnet 192.168.137.0 netmask 255.255.255.0 { 网段和子网掩码
range 192.168.137.20 192.168.137.200; 可分配的IP池
option routers 192.168.137.1; 默认网关
next-server 192.168.137.11; 指定服务器IP
filename "pxelinux.0"; 需要的PXE引导程序
}
/etc/init.d/dhcpd start 开启DHCP服务
5.测试
在客户机上测试,把网卡调在同一个VMNET上,把客户机的BIOS里的boot设置为网卡启动
好了,测试完成。