PXE(preboot execute environment,预启动执行环境)
如果只有一两台电脑要装系统,我们可以使用光盘或者U盘装系统,假如有成百上千台电脑需要装操作系统,如果还用光盘U盘的方式去安装,那是非常非常麻烦的,但是还好有PXE启动,配合kickstart就可以实现通过网络来给众多电脑装操作系统了。
一、配置PXE
1.配置yum源,配置dhcp服务 客户端开机后没有IP,请求服务端,dhcp服务器分配给客户端IP,之前的章节都有关于yum源以及dhcp的章节,这里不再做解释。
2.systemctl stop firewalld.service 关闭火墙,防止客户端访问不到服务器的文件`
3.yum install syslinux tftp-server -y 安装tftp-server提供tftp服务,为pxe客户端提供文件。安装syslinux是为了使用pxelinux.0文件。
[root@pxe ~]# systemctl stop firewalld.service
[root@pxe ~]# yum install syslinux tftp-server.x86_64 -y
4.cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ 把pxelinux.0通过tftp共享出来,以便客户端可以读取此文件,pxelinux.0引导文件引导vmlinux和initrd两个启动文件。
5.vim /etc/xinetd.d/tftp 将disable设置为no,允许tftp服务开启 xinetd是tftp的守护文件 要开启tftp服务,需要xinetd同意,rhel7.0之后的版本可以直接重启tftp服务,rhel7.0之前的版本需要先设置xinetd然后重启xinetd服务。
6.systemctl restart xinetd.service 重启xinetd服务。可以通过chkconfig命令查看tftp是否开启
7.vim /etc/dhcp/dhcpd.conf 修改dhcp的配置文件,因为客户端需要通过dhcp服务将服务器的pxelinux.0共享来读取这个文件
30 subnet 172.25.254.0 netmask 255.255.255.0 {
31 range 172.25.254.60 172.25.254.80;
32 option routers 172.25.254.108;
33 next-server 172.25.254.108; tftp所在的服务器的IP
34 filename “pxelinux.0”; 共享文件的名称
35 }
8.systemctl restart dhcpd.service
[root@pxe ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@pxe ~]# vim /etc/xinetd.d/tftp
[root@pxe ~]# systemctl restart xinetd.service
[root@pxe ~]# vim /etc/dhcp/dhcpd.conf
[root@pxe ~]# tail -n 5 /etc/dhcp/dhcpd.conf
range 192.168.1.50 192.168.1.80;
option routers 192.168.1.120;
next-server 192.168.1.120;
filename "