当前位置:首页 > 系统教程 > 正文

PXE网络装机服务搭建全攻略(CentOS7系统实战教程)

PXE网络装机服务搭建全攻略(CentOS7系统实战教程)

PXE(Preboot Execution Environment)网络装机服务是一种让计算机通过网络启动并安装操作系统的技术,特别适用于批量部署。本教程将详细介绍在CentOS7上搭建PXE网络装机服务的步骤,即使是小白用户也能轻松跟随。我们将使用CentOS7系统作为服务器,配置DHCP、TFTP和HTTP服务,实现无人值守安装。

一、准备工作

在开始之前,请确保你有一台运行CentOS7的服务器,并且网络连接正常。本教程假设服务器IP地址为192.168.1.100,子网掩码为255.255.255.0。同时,你需要准备一个CentOS7的ISO镜像文件,用于提供安装文件。

二、安装和配置DHCP服务

DHCP服务负责为客户端分配IP地址和引导信息。首先,安装DHCP服务器软件:

    sudo yum install -y dhcp  

接下来,配置DHCP服务。编辑配置文件 /etc/dhcp/dhcpd.conf

    subnet 192.168.1.0 netmask 255.255.255.0 {  range 192.168.1.101 192.168.1.200;  option routers 192.168.1.1;  option subnet-mask 255.255.255.0;  filename "pxelinux.0";  # PXE引导文件名  next-server 192.168.1.100;  # TFTP服务器IP}  

保存并退出。然后启动DHCP服务并设置开机自启:

    sudo systemctl start dhcpdsudo systemctl enable dhcpd  

三、安装和配置TFTP服务

TFTP服务用于传输PXE引导文件。安装TFTP服务器和客户端:

    sudo yum install -y tftp-server tftp  

编辑TFTP配置文件 /etc/xinetd.d/tftp,将 disable 改为 no

    service tftp{  socket_type = dgram  protocol = udp  wait = yes  user = root  server = /usr/sbin/in.tftpd  server_args = -s /var/lib/tftpboot  # TFTP根目录  disable = no  per_source = 11  cps = 100 2  flags = IPv4}  

然后,创建TFTP根目录并启动服务:

    sudo mkdir -p /var/lib/tftpbootsudo systemctl start xinetdsudo systemctl enable xinetd  

四、安装和配置HTTP服务

HTTP服务用于提供CentOS7安装文件。我们使用Apache作为HTTP服务器。安装Apache:

    sudo yum install -y httpd  

挂载CentOS7 ISO镜像到HTTP目录。首先,上传ISO文件到服务器,然后挂载:

    sudo mount -o loop /path/to/centos7.iso /var/www/html/centos7  

启动HTTP服务并设置开机自启:

    sudo systemctl start httpdsudo systemctl enable httpd  
PXE网络装机服务搭建全攻略(CentOS7系统实战教程) PXE  CentOS7 网络装机 无人值守安装 第1张

五、配置PXE引导文件

首先,安装SYSLINUX工具,它提供了PXE引导文件:

    sudo yum install -y syslinux  

复制引导文件到TFTP根目录:

    sudo cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/sudo cp /usr/share/syslinux/menu.c32 /var/lib/tftpboot/sudo cp /usr/share/syslinux/libutil.c32 /var/lib/tftpboot/  

从挂载的ISO中复制内核和初始化镜像文件:

    sudo cp /var/www/html/centos7/images/pxeboot/vmlinuz /var/lib/tftpboot/sudo cp /var/www/html/centos7/images/pxeboot/initrd.img /var/lib/tftpboot/  

创建PXE菜单配置文件。在TFTP根目录下创建 pxelinux.cfg 目录,并编辑默认配置文件:

    sudo mkdir -p /var/lib/tftpboot/pxelinux.cfgsudo vi /var/lib/tftpboot/pxelinux.cfg/default  

在配置文件中添加以下内容:

    default menu.c32prompt 0timeout 30label CentOS7 Install  menu label ^Install CentOS 7  kernel vmlinuz  append initrd=initrd.img method=http://192.168.1.100/centos7 devfs=nomount  

六、测试PXE服务

现在,PXE网络装机服务已经搭建完成。你可以启动一台客户端计算机,设置从网络启动。如果配置正确,客户端会从DHCP服务器获取IP地址,然后加载PXE引导菜单,并开始安装CentOS7。这实现了无人值守安装,大大简化了批量部署流程。

七、总结

通过本教程,你学会了在CentOS7上搭建PXE网络装机服务。这个过程涉及配置DHCP、TFTP和HTTP服务,以及设置PXE引导文件。PXE技术对于企业环境中的系统部署非常有用,可以节省大量时间和精力。如果你遇到问题,请检查防火墙设置(确保开放67、69、80端口)和SELinux策略。希望这篇教程能帮助你成功搭建PXE服务!