天天看点

Linux系统中的PXE实现自动化网络安装系统

一、基本概念

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
           
Linux系统中的PXE实现自动化网络安装系统

2.配置dhcp服务

cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf ##复制模板
vim /etc/dhcp/dhcpd.conf       ##编辑配置文件,如图
           
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统

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
           
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统

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

system-config-kickstart

Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统
vim /var/www/html/ks/ks.cfg
39 %packages
40 @base
41 %end
           
Linux系统中的PXE实现自动化网络安装系统

5.安装pxe,并进行配置

yum whatprovides */pxelinux.0

Linux系统中的PXE实现自动化网络安装系统

yum install syslinux -y

Linux系统中的PXE实现自动化网络安装系统

yum search tftp

Linux系统中的PXE实现自动化网络安装系统

yum install tftp-server.x86_64 -y

Linux系统中的PXE实现自动化网络安装系统

yum install xinetd.x86_64 -y

Linux系统中的PXE实现自动化网络安装系统
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
           
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统

.

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
           
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统

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

vim /etc/dhcp/dhcpd.conf
33 next-server 172.25.254.111;
34 filename "pxelinux.0";
           
Linux系统中的PXE实现自动化网络安装系统

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 删除
           
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统

8.开启dhcp服务

systemctl restart dhcpd
           
Linux系统中的PXE实现自动化网络安装系统

测试:

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

Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统
Linux系统中的PXE实现自动化网络安装系统

继续阅读