PXE服务器

PXE服务器

PXE:是预安装环境的缩写。是intel公司推出的一款通过网络来引导操作系统的协议。

常应用于网吧无盘系统,只需将无盘服务器维护好,即可保证网络中的无盘工作站(客户机)的系统正常运行。

 

PXE服务器需要的支持软件:DHCP、TFTP、syslinux、文件共享(NFS、FTP、HTTP、SAMBA)

应用场景

1)、需要进行大批量的部署操作系统(批量化)

2)、PC机或者没有光驱的服务器

3)、需要经常更换或重装linux操作系统的

要求

1)、网络必须流畅,需要有一台来发布安装源的服务器

2)、需要被安装的机器(客户机)支持网络引导,有PXE芯片。

 

PXE服务器_第1张图片

 

PXE服务器中各软件功能:

DHCP:给PXE客户机自动分配TCP/IP设置(包括IP地址,子网掩码,网关,DNS等),并告知客户机TFTP服务器IP地址和PXE启动引导文件名。

 

syslinux:提供pxelinux.0网络引导程序。

 

 

TFTP:迷你的FTP文件共享,用来给PXE客户机提供pxelinux.0引导程序。

 

文件共享FTP:给PXE客户机提供系统安装文件。

 

 

PXE服务器和客户机工作过程:

1)、PXE客户机发出DHCP请求,向DHCP服务器申请IP地址;

2)、DHCP服务器响应PXE客户机的请求,自动从IP地址池中分配一个IP给PXE客户机,并告诉客户机tftp服务器的IP地址和PXE引导程序文件pxelinux.0;

3)、PXE客户机向tftp服务器发出获取pxelinux.0文件的请求;

4)、tftp服务器响应PXE客户机的请求,将共享的pxelinux.0发送给PXE客户机;

5)、这时PXE通过网络启动到了系统安装的主界面;

6)、PXE客户机向(FTP)文件共享服务器发送获取系统安装文件和kickstart自动应答文件的请求;

7)、(FTP)文件共享服务器响应PXE客户机的请求,将共享的系统安装文件和自动应答文件发送给PXE客户机;

8)、PXE客户机就可以自动安装操作系统了。

PXE服务器_第2张图片

 

 

 

 

PXE服务器的部署操作流程(PXE服务器IP是192.168.11.11)

 

1)、环境准备,关闭防火墙和SELINUX

systemctl stop firewalld && systemctl disable firewalld      关闭和防止防火墙开机自启

setenforce 0                                       

sed -i  ' s/SELINUX=enforcing/SELINUX=disabled/ '  /etc/selinux/config    关闭selinux

2)、部署DHCP服务器

rpm q dhcp            查是否安装dhcp

yum y install dhcp       用yum安装dhcp

cat /etc/dhcp/dhcpd.conf

PXE服务器_第3张图片

cat /usr/share/doc/dhcp*/dhcpd.conf.example(把下面的内容复制当作模板修改一下即可)

PXE服务器_第4张图片

vim /etc/dhcp/dhcpd.conf     (修改配置文件,在最后加入上述内容,并修改)

PXE服务器_第5张图片

systemctl restart dhcpd      重启服务

systemctl enable dhcpd      设置为开机自启

 

3)、部署tftp服务器

rpm q tftp-server

yum y install tftp-server

rpm qc tftp-server      查看tftp的配置文件

vim /etc/xinetd.d/tftp   (如图,把yes改为no)

PXE服务器_第6张图片

systemctl restart tftp

systemctl enable tftp

 

rpm q syslinux

yum y install syslinux

updatedb       刷新一下数据库,不然pxelinux.0找不到

locate pxelinux.0

PXE服务器_第7张图片

cd /var/lib/tftpboot

cp v /usr/share/syslinux/pxelinux.0 ./    把pxelinux.0放到共享目录中

df hT            查看一下光盘挂载在哪个目录

PXE服务器_第8张图片

cp v /dvd/isolinux/* ./       复制光盘中的isolinux文件中的引导程序文件到共享目录

mkdir /var/lib/tftpboot/pxelinux.cfg

cp v isolinux.cfg pxelinux.cfg/default   

4)、

部署FTP服务器

rpm q vsftpd

yum y install vsftpd

rpm qc vsftpd

systemctl restart vsftpd

systemctl enable vsftpd

mkdir /var/ftp/dvd

mount /dev/sr0 /var/ftp/dvd            将光盘中的系统文件共享到发ftp上

vim /var/lib/tftpboot/pxelinux.cfg/default   找到64行将后面删去改为

method=ftp://192.168.11.11/dvd

此时以可手动安装系统了,接下来在共享一个kickstart自动安装文件,来实现静默安装。

这个文件装系统之后在root家目录里就自动生成一个,所以根据需求,拿它来修改一下。

mkdir /var/ftp/ks

cp v anaconda-ks.cfg /var/ftp/ks/ks.cfg

chmod 644 /var/ftp/ks/ks.cfg(注:得把文件中的cdrom注释了,其他根据自己需求修改

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

ks=ftp://192.168.11.11/ftp/ks/ks.cfg

还可以采用kickstart软件来生产ks.cfg自动应答文件。

yum y install system-config-kickstart

system-config-kickstart    启动kiskstart配置程序

PXE服务器_第9张图片

可根据自己需求选择配置信息

 

5)、PXE客户机测试,可自动装系统。

注客户机内存必须1.3G以上,否则会出错