一、什么是pxe?
PXE (Preboot excute Environment)是由 Intel 公司开发的最新技术,工作于 Client/Server 的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端(客户端)基本软件设置,从而引导预先安装在服务器中的终端操作系统。
二、pxe的优点?
通过pxe预启动环境安装系统,可以节省资源,与传统的在每台机器上通过U盘光盘安装,不仅效率高,还可以节省资源。企业中都是这么安装的。
三、pxe的实现
本次实验服务端为server,主机名为node2。
1.yum install dhcp -y #安裝dhcp
2.yum install syslinux-4.05-8.el7.x86_64 -y #安裝提供pxe文件的软件
为啥安装第二个软件?
因为yum whatprovides */pxelinux.0的结果
所需的pxelinux.0文件是由syslinux-4.05-8.el7.x86_64提供的。文件所处位置:在/usr/share/syslinux/pxelinux.0
3.yum install tftp-server -y#此软件启动比较特殊
vim /etc/xinetd.d/tftp
disable=no #改为no
systemctl restart xinetd.service #tftp软件依赖xinetd
chkconfig --list #查看一下是否开启
4.cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot #复制pxe文件到tftpboot下,因为dhcp会从这里面找
5.mkdir /var/lib/tftpboot/pxelinux.cfg
6. cp 镜像/isoliux/* /var/lib/tftpboot
cp 镜像/isoliux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
7.dhcp配置
27,28行删除,36行及以后删除
8 行设置个dns
32 subnet 172.25.254.0 netmask 255.255.255.0 {
33 range 172.25.254.10 172.25.254.20;
34 option routers 172.25.254.13;
35 next-server 172.25.254.213;#服务端主机ip
36 filename "pxelinux.0";#去/var/lib/tftpboot/下找pxelinux.0文件
37 }
systemctl restart dhcpd.service
8.setenforce 0 #关闭selinux
9.systemctl stop firewald.service
(2)yum install syslinux-4.05-8.el7.x86_64
(3)yum install tftp-server -y
(4)cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot
(5)
(6)
(7)dhcp配置文件修改
测试:
将desktop的BootOption改为网卡启动
再次启动:
四、安装后启动界面的一些基本设置
1.等待时间
启动后的界面
默认是60秒,可以更改为为6s(timeout=60)
2.改变背景
要自定义背景的大小必须是640x480
yum whatprovides */convert #查询什么提供这个软件
yum install ImageMagick-6.7.8.9-15.el7_2.x86_64 -y #安装这个软件
convert -resize 640x480! 1.png 2.png #必须加!否则是按比例转换的
file 1.png #查看一下大小
vim default
将2.png放到tftp下
开启:
3.插入ks.cfg
装好http,做好ks.cfg文件在var/lib/tftpboot/pxelinux.cfg/default第64行
repo是镜像所在位置。ks是安装后续文件所在位置
64行改为
68行默认鼠标停留标题,menu default放在哪个标题下鼠标就默认停留在哪
**注:**测试机启动的时候BootOption选择网卡启动,测试机在获取到ip,dns,gw之后,还回去找pxelinux.0这个文件。pxelinux.0这个文件会指向pxelinux.cfg目录,pxelinux.cfg这个目录里只有default文件,default文件会指向镜像isolinux目录下的内核等文件。