1.环境准备

  • 操作系统:CentOS Linux release 7.4.1708 (Core)
  • 光盘镜像:CentOS-7-x86_64-Everything-1708.iso
  • 安装工具:kickstart + dhcp + tftp-server + xinetd+ httpd
  • VMware虚拟机

1.1 服务器禁用SELinux,然后进行重启操作

  • 查看SELinux状态:sestatus
    PXE安装部署CentOS7.4
  • 关闭:vim /etc/sysconfig/selinux
    PXE安装部署CentOS7.4

1.2 关闭防火墙,设置开机不启动

systemctl status firewalld		# 查看防火墙的状态
systemctl stop firewalld			# 关闭防火墙
systemctl disable firewalld		# 设置开机不启动
systemctl is-enabled firewalld	# 查看是否设置开机启动

1.3 软件安装

yum install -y httpd dhcp tftp-server tftp syslinux
yum install -y httpd dhcp tftp-server xinetd syslinux system-config-kickstart 
yum groupinstall -y 'X Window System'
rpm -q httpd dhcp tftp-server xinetd syslinux system-config-kickstart

PXE安装部署CentOS7.4

  • 重启:reboot
    PXE安装部署CentOS7.4

2.软件配置

2.1 DHCP服务配置

2.1.1 修改DHCP配置文件

  • 拷贝文件:
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

PXE安装部署CentOS7.4
修改文件:

vim /etc/dhcp/dhcpd.conf
egrep -v "^#|^$" /etc/dhcp/dhcpd.conf

PXE安装部署CentOS7.4

2.1.2 启动DHCP服务

systemctl status dhcpd		    # 查看dhcp的状态
systemctl start dhcpd		        # 启动dhcp
systemctl enable dhcpd		    # 设置开机启动
systemctl is-enabled dhcpd	    # 查看是否设置开机启动

PXE安装部署CentOS7.4

2.1.3 DHCP服务端口查看

ss -nulp | grep dhcpd

PXE安装部署CentOS7.4

2.2 HTTP服务配置

2.2.1 目录建立及光盘挂载

  • 创建目录:mkdir -pv /var/www/html/CentOS7
    PXE安装部署CentOS7.4
  • 在/mnt目录下创建/cdrom
    PXE安装部署CentOS7.4
  • 查看光盘镜像挂载位置,进入/dev目录查找光驱,一般是cdrom系统上查询结果:
    PXE安装部署CentOS7.4
  • 可见系统上用sr0表示光驱,然后就可以挂载了
mount -o loop /dev/sr0 /mnt/cdrom/
  • 如果遇到以下问题,则说明镜像没有挂在启动
    PXE安装部署CentOS7.4
    PXE安装部署CentOS7.4
  • 挂载成功
    PXE安装部署CentOS7.4
  • 挂载:mount --bind /mnt/cdrom/ /var/www/html/CentOS7/
    PXE安装部署CentOS7.4

2.2.2 启动HTTP服务,并设置为开机启动

systemctl status httpd		    # 查看httpd的状态
systemctl start httpd		    # 启动httpd
systemctl enable httpd		# 设置开机启动
systemctl is-enabled httpd	# 查看是否设置开机启动

PXE安装部署CentOS7.4

2.3 TFTP服务配置

2.3.1 xinetd配置

  • 修改:vim /etc/xinetd.d/tftp
    PXE安装部署CentOS7.4

2.3.2 启动tftp.socket服务,并设置为开机启动

systemctl start tftp.socket			# 启动tftp.socket
systemctl status tftp.socket		    # 查看状态
systemctl enable tftp.socket		# 设置开机启动
systemctl is-enabled tftp.socket	# 查看是否设置为开机启动

PXE安装部署CentOS7.4

2.3.3 启动tftp.service服务,并设置为开机启动

systemctl start tftp.service		    # 启动tftp.service
systemctl status tftp.service		# 查看状态
systemctl enable tftp.service		# 设置开机启动
systemctl is-enabled tftp.service	# 查看是否设置为开机启动

PXE安装部署CentOS7.4

  • 查看端口:ss -unlp | grep 69
    PXE安装部署CentOS7.4

2.3.4 启动xinetd服务,并设置为开机启动

systemctl start xinetd		    # 启动xinetd
systemctl status xinetd		# 查看状态
systemctl enable xinetd		# 设置开机启动
systemctl is-enabled xinetd	# 查看是否设置为开机启动

3.配置文件

需要导入TFTP服务器的主要文件有:

  1. 引导文件:pxelinux.0
  2. 内核文件:vmlinuz initrd.img
  3. 引导菜单:isolinux.cfg – 开机后选择启动项的菜单文

3.1 引导文件pxelinux.0

  • 由软件包syslinux生成,安装syslinux软件包
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

PXE安装部署CentOS7.4

3.2 导入内核及菜单文件:vmlinuz initrd.img

cp /mnt/cdrom/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/

PXE安装部署CentOS7.4

  • 引导菜单配置文件:isolinux.cfg
  • 系统自带的两种窗口模块之一:vesamenu.c32
  • 窗口提示信息文件:boot.msg
  • 窗口背景图片:splash.png
cp /mnt/cdrom/isolinux/{vesamenu.c32,boot.msg,splash.png} /var/lib/tftpboot/
cp /usr/share/syslinux/{chain.c32,mboot.c32,menu.c32,memdisk} /var/lib/tftpboot/

PXE安装部署CentOS7.4

  • 新建pxelinux.cfg文件夹:mkdir /var/lib/tftpboot/pxelinux.cfg
    PXE安装部署CentOS7.4

3.3 安装引导文件CentOS7.cfg文件

  • Xshell下安装system-config-kickstart
  • 下载安装Xmanager(官网下载试用)
  • 安装好Xmanager,选中10.180.210.217,右击,点击“属性”,选取“隧道”进行配置

PXE安装部署CentOS7.4

  • 在控制台执行:
system-config-kickstart

出现以下窗口,进行配置,设置语言,键盘,时区,root密码,安装完毕后重启等
PXE安装部署CentOS7.4
PXE安装部署CentOS7.4
PXE安装部署CentOS7.4
PXE安装部署CentOS7.4
PXE安装部署CentOS7.4
PXE安装部署CentOS7.4
PXE安装部署CentOS7.4
PXE安装部署CentOS7.4
PXE安装部署CentOS7.4
PXE安装部署CentOS7.4
PXE安装部署CentOS7.4

  • 关闭,拷贝:
mkdir -pv /var/www/html/ksdir
cp /root/CentOS7.cfg /var/www/html/ksdir/
chmod +r /var/www/html/ksdir/CentOS7.cfg

PXE安装部署CentOS7.4

3.4 复制文件并修改名称,修改default

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

PXE安装部署CentOS7.4

vim /var/lib/tftpboot/pxelinux.cfg/default
  • 菜单显示等待时间,单位为1/10秒,默认等待60秒,修改菜单等待时间为60,即等待6秒,若无操作则进入默认菜单;
    timeout=60
    PXE安装部署CentOS7.4
    修改为:
label linux
  menu label ^Install CentOS 7
  kernel vmlinuz
  append initrd=initrd.img

label linux 2
  menu label ^Install CentOS by Kickstart
  kernel vmlinuz
  append initrd=initrd.img inst.repo=http://192.168.120.11/CentOS7 inst.ks=http://192.168.120.11/ksdir/CentOS7.cfg

PXE安装部署CentOS7.4
PXE安装部署CentOS7.4

  • 新建虚拟机
    PXE安装部署CentOS7.4
  • 开机
    PXE安装部署CentOS7.4
  • PXE配置成功。

相关文章:

  • 2018-07-13
  • 2021-12-04
  • 2021-07-09
  • 2021-05-31
  • 2021-11-24
  • 2021-11-11
  • 2021-11-29
猜你喜欢
  • 2022-02-14
  • 2021-09-16
  • 2021-09-13
  • 2021-10-15
  • 2022-01-11
  • 2021-08-01
  • 2021-05-19
相关资源
相似解决方案