一、基本概念

PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端(客户端)基本软件设置,从而引导预先安装在服务器中的终端操作系统。PXE可以引导多种操作系统,如:Windows95/98/2000/windows2003/windows2008/winXP/win7/win8,linux系列系统等。

二、工作原理

须知:安装系统时,安装页面读取的是镜像文件下的isolinux目录下的isolinux.cfg这个文件。

三、PXE安装配置过程

所需要的环境:iso镜像、kickstart、dhcp、tftp、httpd、pxe

配置过程:

1.安装配置环境所需要的软件

yum install dhcp httpd system-config-kickstart -y

ghost xp系统镜像包_dhcp


2.配置dhcp服务

cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf ##复制模板
vim /etc/dhcp/dhcpd.conf       ##编辑配置文件,如图

ghost xp系统镜像包_ghost xp系统镜像包_02


ghost xp系统镜像包_ghost xp系统镜像包_03


3.将镜像挂载到http可以访问的目录下

mkdir /var/www/html/rhel7.3
mount /dev/sr0 /var/www/html/rhel7.3/     ##此处因为是在虚拟机环境下,奖项添加到虚拟硬盘上,所以直接将/dev/cdrom进行挂载
df       ##查看挂载成功
vim /etc/fstab
11 /dev/sr0 /var/www/html/rhel7.3/ iso9660  defaults 0  0   ##mount可以查看设备类型
systemctl start httpd
systemctl stop firewalld

ghost xp系统镜像包_kickstart_04


ghost xp系统镜像包_pxe_05


ghost xp系统镜像包_pxe_06


ghost xp系统镜像包_linux_07

4.配置kickstart安装(图形页面的,如图)

system-config-kickstart

ghost xp系统镜像包_linux_08


ghost xp系统镜像包_pxe_09


ghost xp系统镜像包_pxe_10


ghost xp系统镜像包_kickstart_11


ghost xp系统镜像包_pxe_12


ghost xp系统镜像包_linux_13


ghost xp系统镜像包_ghost xp系统镜像包_14

ghost xp系统镜像包_kickstart_15

vim /var/www/html/ks/ks.cfg
39 %packages
40 @base
41 %end

ghost xp系统镜像包_kickstart_16


5.安装pxe,并进行配置yum whatprovides */pxelinux.0

ghost xp系统镜像包_linux_17


yum install syslinux -y

ghost xp系统镜像包_ghost xp系统镜像包_18


yum search tftp

ghost xp系统镜像包_ghost xp系统镜像包_19


yum install tftp-server.x86_64 -y

ghost xp系统镜像包_pxe_20


yum install xinetd.x86_64 -y

ghost xp系统镜像包_ghost xp系统镜像包_21

chkconfig
vim /etc/xinetd.d/tftp
14 disable     =no
systemctl restart xinetdd.service
netstat -antlupe | grep xinetd     ##查看xinted接口是否开启
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/    ##生成安装头文件
mkdir /var/lib/tftpboot/pxelinux.cfg

ghost xp系统镜像包_dhcp_22


ghost xp系统镜像包_dhcp_23


ghost xp系统镜像包_pxe_24


ghost xp系统镜像包_ghost xp系统镜像包_25


.

cd /var/lib/tftpboot/
ls(会有pxelinux.0和pxelinux.cfg)
cp /var/www/html/rhel7.3/isolinux/* /var/lib/tftpboot/
ls
cp isolinux.cfg pxelinux.cfg/default

ghost xp系统镜像包_linux_26


ghost xp系统镜像包_dhcp_27


ghost xp系统镜像包_ghost xp系统镜像包_28

6.在dhcp配置文件里,设置让客户端得到ip时还需要读取的文件

vim /etc/dhcp/dhcpd.conf
33 next-server 172.25.254.111;
34 filename "pxelinux.0";

ghost xp系统镜像包_pxe_29

7.为了在客户端可以更加形象直观的看到效果,可以编辑安装系统需要读取的文件

vim /var/lib/tftpboot/pxelinux.cfg/default
2  timeout 60
11 menu title Red Hat Enterprise Linux 7.3 from yang
63 menu default
64 kernel vmlinuz
65 append initrd=initrd.img repo=http://172.25.254.111/rhel7.3 ks=http://172.25.254.111/ks/ks.cfg
66 删除

ghost xp系统镜像包_ghost xp系统镜像包_30


ghost xp系统镜像包_dhcp_31

8.开启dhcp服务

systemctl restart dhcpd

ghost xp系统镜像包_dhcp_32

测试:

客户端,设置从网卡启动(在真机里的话可以开机启动bios界面,选择从网络安装)

ghost xp系统镜像包_pxe_33


ghost xp系统镜像包_kickstart_34


ghost xp系统镜像包_kickstart_35


ghost xp系统镜像包_pxe_36


ghost xp系统镜像包_dhcp_37