pxe是什么?

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

pxe表现形式

PXE最直接的表现是,在网络环境下工作站可以省去硬盘,但又不是通常所说的无盘站的概念,因为使用该技术的PC在网络方式下的运行速度要比有盘PC快3倍以上。当然使用PXE的PC也不是传统意义上的TERMINAL终端,因为使用了PXE的PC并不消耗服务器的CPU,RAM等资源,故服务器的硬件要求极低。


PXE启动原理

当计算机引导时,BIOS把 PXE Client 调入内存中执行,然后由 PXE Clinent 将放置在远端的文件通过网络下载到本地运行



1.安装



yum install httpd dhcp tftp-server syslinux -y



httpd        ##共享安装资源
dhcp        ##分配ip以及让客户主机获取pxelinux.0文件
pxelinux.0    ##预安装环境头文件,用来指定读取后续文件的程序
tftp-server    ##提供tftp协议,令客户主机可以读取到预安装环境
syslinux    ##提供pxelinux.0文件

2.启用服务

systemctl stop firewalld 

systemctl disable firewalld 

systemctl start httpd 

systemctl enable httpd



pxe启动bios设置_pxe启动bios设置

##启用tftp服务
vim /etc/xinetd.d/tftp 

14         disable                 = no



pxe启动bios设置_html_02



systemctl restart xinetd 

chkconfig --list 

xinetd based services: 

    chargen-dgram:     off 

    chargen-stream:    off 

    daytime-dgram:     off 

    daytime-stream:    off 

    discard-dgram:     off 

    discard-stream:    off 

    echo-dgram:        off 

    echo-stream:       off 

    tcpmux-server:     off 

    tftp:              on        ##tftp服务开启 

    time-dgram:        off 

    time-stream:       off



pxe启动bios设置_linux_03



##启用dhcp服务 


cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf 

vim /etc/dhcp/dhcpd.conf 

option domain-name "example.com";    ##客户主机域名 

option domain-name-servers 172.25.254.254; ##客户主机获得到的dns 

default-lease-time 600;            ##默认租约期 

max-lease-time 7200;            ##最长租约期 

log-facility local7;            ##日志级别 

subnet 172.25.254.0 netmask 255.255.255.0 {    ##网段,子网掩码 

  range 172.25.254.60 172.25.254.70;    ##ip地址池 

  option routers 172.25.254.250;    ##客户主机获得到的网关 

  filename "pxelinux.0";        ##客户主机获得到的预安装环境头文件 

  next-server 172.25.254.100;        ##指定头文件所在主机的ip 

}



pxe启动bios设置_html_04


systemctl start dhcpd 

systemctl enable dhcpd 



3.设定共享文件
##制作安装源 

mkdir  /var/www/html/rhel7.0 

mkdir  /iso 

mv /root/rhel-server-7.0-x86_64-dvd.iso  /iso/ 

mount /iso/rhel-server-7.0-x86_64-dvd.iso /var/www/html/rhel7.0/ 

vim /etc/rc.d/rc.local 

mount /iso/rhel-server-7.0-x86_64-dvd.iso /var/www/html/rhel7.0/ 

chmod +x /etc/rc.d/rc.local 



##制作预安装环境 

cp /var/www/html/rhel7.0/isolinux/*  /var/lib/tftpboot/ 

cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ 

mkdir /var/lib/tftpboot/pxelinux.cfg 

cp /var/lib/tftpboot/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default 

systemctl restart xinetd



pxe启动bios设置_linux_05


pxe启动bios设置_html_06



##设定自动化部署 

yum install system-config-kickstart 

system-config-kickstart        ---->/var/www/html/rhel7.0.cfg



pxe启动bios设置_linux_07


vim /var/lib/tftpboot/pxelinux.cfg/default 


label autoinstall    ##选项标签 

  menu label ^Autoinstall RHEL7.0    ##标题 

  kernel vmlinuz            ##启动的内核文件 

  append initrd=initrd.img repo=http://172.25.254.65/rhel7.0 ks=http://172.25.254.133/rhel7.0.cfg 

         ##初始化镜像         ##安装资源                ##自动安装脚本



pxe启动bios设置_pxe启动bios设置_08