1 什么是PXE?

 PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端(客户端)基本软件设置,从而引导预先安装在服务器中的终端操作系统。(摘自百度)
所以说,PXE应该说是一种引导方式,实现PXE需要服务器内装有kickstart,syslinux ,dhcp,tftp-server,httpd

2 配置远端服务器

2.1 客户端请求分配ip

客户端请求服务端分配ip,服务端需要配置dhcp服务,以下的配置步骤在之前的博文中已经有过讲解。
yum install dhcp -y      
cd /etc/dhcp                              
vim dhcpd.conf
cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vim dhcpd.conf
systemctl restart dhcpd

bios设置pxe启动耗电严重么 bios pxe启动_bios设置pxe启动耗电严重么


bios设置pxe启动耗电严重么 bios pxe启动_bios设置pxe启动耗电严重么_02


bios设置pxe启动耗电严重么 bios pxe启动_bios设置pxe启动耗电严重么_03


2.2 客户端从分配到ip,网关,dns,利用tftp协议下载软件包pxelinux.0

服务端下载tftp,syslinux(获得pxelinux.0文件安装包),并开启tftp:
yum install syslinux   tftp-server.x86_64   -y
 systemctl start  tftp

bios设置pxe启动耗电严重么 bios pxe启动_pxe_04


bios设置pxe启动耗电严重么 bios pxe启动_网络启动_05

2.3 再次修改dhcp配置文件,告诉客户端访问的服务器ip和pxelinux.0文件,并重启服务

bios设置pxe启动耗电严重么 bios pxe启动_网络启动_06

2.4 服务端pxelinux.0引导找到pxelinux.cfg/default文件

这一过程首先需要http服务,配置网络yum源
yum install httpd -y 
mkdir /var/www/html/westos
mount /dev/cdrom /var/www/html/westos
systemctl start httpd

bios设置pxe启动耗电严重么 bios pxe启动_pxe_07


bios设置pxe启动耗电严重么 bios pxe启动_bios设置pxe启动耗电严重么_08

2.5 将isolinux.cfg 复制到pxelinux.cfg/default,该脚本会引导找到vmlinux,initrd,从而进去安装界面

cp /var/www/html/westos/isolinux/* /var/lib/tftpboot/
 cp /user/share/syslinux/pxelinux.0 /var/lib/tftpboot/
 mkdir /var/lib/tftpboot/pxelinux.cfg
 cd /var/lib/tftpboot/
 cp isolinux.cfg pxelinux.cfg/default

bios设置pxe启动耗电严重么 bios pxe启动_Linux系统_09

并且,我们可以修改pxelinux.cfg/default文件,设置安装界面。还可以添加安装源和ks自动安装脚本

label linux
menu label ^Install Red Hat Enterprise Linux 7.0			           小标题
menu default								                                               设定为默认标题
kernel vmlinuz
append initrd=initrd.img repo=http://172.25.254.100/soucre ks=http://172.25.254.100/ks.cfg	安装源和ks

bios设置pxe启动耗电严重么 bios pxe启动_网络启动_10


bios设置pxe启动耗电严重么 bios pxe启动_Linux系统_11

3 测试,能否从网卡启动

设置虚拟机启动为网络启动:

bios设置pxe启动耗电严重么 bios pxe启动_tftp_12


启动成功!

bios设置pxe启动耗电严重么 bios pxe启动_Linux系统_13