Linux—PXE方式批量自动安装系统

一.基础知识

1.PXE的概念

           PXE(preboot execute environment,预启动执行环境)技术工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端(客户端)基本软件设置,从而引导预先安装在服务器中的终端操作系统。

         PXE可以引导多种操作系统,如:Windows95/98/2000/windows2003/windows2008/winXP/win7/win8,linux系列系统等。

2.相关资源

dhcp-4.2.5-27.el7.x86_64                ##利用dhcp分发ip的过程,提供pxe安装服务

tftp-server-5.2-11.el7.x86_64          ##pxe安装过程系统需要tftp方式访问服务器目录pxelinux.0

syslinux-4.05-8.el7.x86_64              ##pxelinux.0目录由syslinux安装包提供

redhat7.2镜像                                   ##安装的系统版本

httpd

kickstart

二.布置提供PXE安装的服务器

服务器环境:

1)172.25.254.162

2)网络yum源配置完成,yum仓库可以使用

3)dhcp服务开启成功

4)火墙关闭

5)selinux处于关闭或警告状态

配置步骤:

1.安装提供服务的软件

[root@pxe ~]# yum install syslinux tftp-server -y

2.将默认读取的文件拷贝到pxe共享目录

将pxelinux.0文件通过tftp共享出来,使客户端可以读取

[root@pxe ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

3.开启守护进程

tftpd服务的开启需要守护进程的开启,守护进程不是独立的进程,且也7.0之后都需要手动开启

[root@pxe ~]# vim /etc/xinetd.d/tftp 

Linux—PXE方式批量自动安装系统_第1张图片

重启提供守护进程的服务

[root@pxe ~]# systemctl restart xinetd.service 

4.在dhcpd中添加pxe共享文件地址

[root@pxe ~]# vim /etc/dhcp/dhcpd.conf 

Linux—PXE方式批量自动安装系统_第2张图片

重启dhcpd服务

[root@pxe ~]# systemctl restart dhcpd

5.下载系统安装时需要读取的镜像文件到指定目录

1)新建pxelinux.cfg目录

[root@pxe ~]# mkdir /var/lib/tftpboot/pxelinux.cfg

2)下载镜像文件isolinux.cfg到目录/var/lib/tftpboot/pxelinux.cfg

Linux—PXE方式批量自动安装系统_第3张图片

 

3)并且将文件名称修改为系统默认读取的default

[root@pxe pxelinux.cfg]# cd /var/lib/tftpboot/pxelinux.cfg/
[root@pxe pxelinux.cfg]# ls
default

4)编辑文件default,这是pxe安装时客户端进入安装界面读取的配置文件

[root@pxe pxelinux.cfg]# pwd
/var/lib/tftpboot/pxelinux.cfg
[root@pxe pxelinux.cfg]# ls
default
[root@pxe pxelinux.cfg]# vim default 

5)将镜像文件中isolinux/下的所有文件下载到指定目录

Linux—PXE方式批量自动安装系统_第4张图片

下载完成

[root@pxe ~]# cd /var/lib/tftpboot/
[root@pxe tftpboot]# ls
boot.cat   initrd.img    memtest       splash.png   vesamenu.c32
boot.msg   isolinux.bin  pxelinux.0    TRANS.TBL    vmlinuz
grub.conf  isolinux.cfg  pxelinux.cfg  upgrade.img

检测:

选择pxe方式安装虚拟机

Linux—PXE方式批量自动安装系统_第5张图片

注意安装的系统版本

Linux—PXE方式批量自动安装系统_第6张图片

设置虚拟机名称及网卡模式

Linux—PXE方式批量自动安装系统_第7张图片

进入安装界面

Linux—PXE方式批量自动安装系统_第8张图片

此时需要进行自定义的选项设置

Linux—PXE方式批量自动安装系统_第9张图片

批量进行设置的话效率很低,因此,需要配置自动安装的服务

 

三.PXE安装的自定义配置

编辑pxe安装时读取的配置文件

[root@pxe pxelinux.cfg]# vim /var/lib/tftpboot/pxelinux.cfg/default 

1.修改默认选项

Linux—PXE方式批量自动安装系统_第10张图片

将68行的menu default设置到第一个安装选项中

Linux—PXE方式批量自动安装系统_第11张图片

 

2.修改等待时间

此处的10代表等待时间1s,我设置为5s

3.修改背景图片

背景图片默认为/var/lib/tftpboot目录中的图片splash.png

该图片的格式是640 x 480的,因此更改的背景图片格式应相同

Linux—PXE方式批量自动安装系统_第12张图片

 

1)首先安装软件ImageMagick,用于更改图片格式

[root@pxe pxelinux.cfg]# yum install ImageMagick -y

2)将自定义的图片test.png格式更改,并保存为dai.png

[root@pxe Pictures]# convert -resize 640x480! test.png dai.png

格式修改成功

3)将自定义背景图片拷贝到指定目录/var/lib/tftfboot

Linux—PXE方式批量自动安装系统_第13张图片

4)更改指定的背景图片

更改成功

Linux—PXE方式批量自动安装系统_第14张图片

4.修改标题名称

62行内容为第一个安装选项的标题

Linux—PXE方式批量自动安装系统_第15张图片

 

四.利用kickstar提供批量自动安装服务

1.安装kickstart

[root@pxe pxelinux.cfg]# yum install systemctl-config-kickstart.noarch -y

2.安装httpd,提供网络方式提供kickstart自动安装服务

[root@pxe pxelinux.cfg]# yum install httpd -y

开启httpd服务

[root@pxe pxelinux.cfg]# systemctl start httpd
[root@pxe pxelinux.cfg]# systemctl enable httpd

3.开始自动化安装选项设置

[root@pxe ~]# system-config-kickstart 

Linux—PXE方式批量自动安装系统_第16张图片

Linux—PXE方式批量自动安装系统_第17张图片

Linux—PXE方式批量自动安装系统_第18张图片

Linux—PXE方式批量自动安装系统_第19张图片

Linux—PXE方式批量自动安装系统_第20张图片

Linux—PXE方式批量自动安装系统_第21张图片

Linux—PXE方式批量自动安装系统_第22张图片

 

Linux—PXE方式批量自动安装系统_第23张图片

Linux—PXE方式批量自动安装系统_第24张图片

Linux—PXE方式批量自动安装系统_第25张图片

Linux—PXE方式批量自动安装系统_第26张图片

Linux—PXE方式批量自动安装系统_第27张图片

Linux—PXE方式批量自动安装系统_第28张图片

4.查看http发布的ks.cfg文件能否正常访问

Linux—PXE方式批量自动安装系统_第29张图片

5.编辑ks.cfg文件

[root@pxe pxelinux.cfg]# cd /var/www/html/
[root@pxe html]# ls
ks.cfg
[root@pxe html]# vim ks.cfg 

Linux—PXE方式批量自动安装系统_第30张图片

6.检测ks.cfg文件

7.编辑pxe安装配置文件,添加ks服务文件路径

[root@pxe html]# vim /var/lib/tftpboot/pxelinux.cfg/default

8.重启httpd以及xinetd服务

[root@pxe html]# systemctl restart httpd
[root@pxe html]# systemctl restart xinetd.service 
[root@pxe html]# 

检测:

Linux—PXE方式批量自动安装系统_第31张图片

你可能感兴趣的:(Linux—PXE方式批量自动安装系统)