PXE服务器部署方法总结

平时处理问题时经常会遇到客户的PXE服务器无法进入的相关问题,定位起来需要我们较好的了解PXE,这样根据异常打印和出问题的阶段就能初步判断问题方向,所以为了加深理解,我使用Centos7.6作为本端服务器系统完成了PXE服务器的部署,这是个很有意思的东西,之前试过几次都失败了,这次总算成功了,总结一下方法

1.关闭防火墙和安全子系统,不关闭的话客户端访问过来拿系统文件时会受阻

systemctl stop firewalld
systemctl disable firewalld
vi /etc/sysconfig/selinux
enforcing改为disable

2.配置yum源,安装相关服务
在/etc/yum.repo.d路径下删掉原先文件
Vi local.repo
内容如下

[localREPO]
name=localhost8
baseurl=file:///mnt/BaseOS
enable=1
gpgcheck=0

然后yum makecache ,之后安装服务
a) yum –y install dhcpd (为PXE分配IP)没有dhcpd的话dhcp
b) yum –y install tftp tftp-server (为PXE提供配置文件获取路径)
c) yum –y install httpd (为PXE提供镜像获取地址)
d) yum –y install syslinux (为获取legacy pxe启动文件pxelinux.0)

3.设置用来连接客户端机器的网口静态IP,如下图


1.PNG

4.配置dhcp服务,如下图


2.PNG

5.配置tftp服务,路径和文件系统结构如下图


3.PNG

Legacy pxe文件配置如下
cd /var/lib/tftpboot
mkdir legacy_pxe uefi_pxe
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/legacy_pxe/
cd legacy_pxe
 mkdir centos_7.6 centos_8.4 pxelinux.cfg 创建该三个文件夹
 cp /mnt/cdrom/isolinux/{vmlinuz,initrd.img} /var/lib/tftpboot/legacy_pxe/centos_7.6(根据系统的实际挂载点来)
 centos 8的启动文件与centos7配置方式一致
 cp /mnt/cdrom/isolinux/vesamenu.c32 /var/lib/tftpboot/legacy_pxe
 cd /var/lib/tftpboot/legacy_pxe/pxelinux.cfg
 vim default
 chmod –R 777 /var/lib/tftpboot/legacy_pxe
pxelinux.cfg/default进行如下图修改


4.PNG

UEFI文件配置如下

cp /mnt/cdrom/EFI/BOOT/{grub.cfg, grubx64} /var/lib/tftpboot/uefi_pxe
 initrd.img与vmlinuz两个文件配置方式与legacy pxe的配置方式一致
 修改grub.cfg文件如下图:vim /var/lib/tftpboot/uefi_pxe/grub.cfg
 chmod –R 777 /var/lib/tftpboot/uefi_pxe


5.PNG

6.配置httpd服务
  a) cd /var/www/html
  b) mkdir centos_7.6 centos_8.4
  c) mount /var/www/html/centos_7.6
  d) mount /var/www/html/centos_8.4
7.启动所有服务,设置所有服务开机自启
  systemctl start dhcpd
  systemctl enable dhcpd
  systemctl start tftp
  systemctl enable tftp
  systemctl start httpd
  systemctl enable httpd

常见问题

  1. 容易出问题的地方就在于配置文件,格式不对就会导致失败。
  2. 如果拿vesamenu.c32时,没有完全拷贝完导致缺失的话,会在引导时报 vesamenu.c32 is not a C32 文件。所以要保证cp的时候两边的文件大小一致
  3. 对tftpboot下面文件夹的赋权很重要,没有权限的话也会导致引导时不能正确访问

目前还遗留了个问题,海光OS无法正常被获取安装


7.PNG

怀疑是OS本身权限的问题,公版7.6和8.4都可以正常获取安装了,咨询海光确认这个版本的海光OS确实有因权限导致的问题,拿到更新的海光OS后再验证问题就不在了。


9.PNG

legacy和uefi的效果图分别如下,非常漂亮。


legacy.PNG
6.PNG

你可能感兴趣的:(PXE服务器部署方法总结)