PXE高效批量网络装机

什么是PXE

PXE是由Intel公司开发的最新技术,全称为"Preboot Execution Environment"(预启动执行环境),工作于Client/Server的网络模式。它允许工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统。在启动过程中,终端要求服务器分配IP地址,再用TFTP(Trivial File Transfer Protocol)或MTFTP(Multicast Trivial File Transfer Protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端(客户端)基本软件设置,从而引导预先安装在服务器中的终端操作系统

工作原理

  1. 计算机启动: 在计算机启动时,它会通过网络发送DHCP请求。

  2. DHCP分配IP地址: DHCP服务器响应并分配IP地址给计算机。

  3. DHCP提供PXE信息: DHCP服务器除了IP地址外,还提供PXE服务器的IP地址和引导文件路径。

  4. PXE服务器: PXE服务器响应PXE引导请求,提供引导文件。

  5. TFTP文件传输: 计算机使用TFTP协议从PXE服务器下载引导文件。

  6. 引导加载器: 引导文件中的引导加载器加载操作系统内核和其他引导文件。

  7. 操作系统启动: 引导加载器引导操作系统,计算机最终启动到操作系统环境。

实操(高效批量网路装机)

复制代码
yum install tftp-server.x86_64  dhcp syslinux vsftpd -y    //安装软件    

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example   /etc/dhcp/dhcpd.conf //生成dhcp 配置文件

vim   /etc/dhcp/dhcpd.conf                       //修改配置文件
subnet 192.168.17.0 netmask 255.255.255.0 {
  range 192.168.17.20 192.168.17.50;
  option routers 192.168.17.55;
  next-server 192.168.17.55;
  filename "pxelinux.0";
}


 
vim /etc/xinetd.d/tftp                                     //修改  tftp  配置文件  将yes 改为no
disable                 = no


准备四大文件
pxelinu.0
cp /usr/share/syslinux/pxelinux.0    /var/lib/tftpboot/


准备内核  驱动文件  
mount  /dev/sr0    /mnt
cd /mnt/isolinux/
cp vmlinuz  initrd.img    /var/lib/tftpboot/


准备手写配置文件
cd  /var/lib/tftpboot/
mkdir pxelinux.cfg
vim  pxelinux.cfg/default
default linux
timeout 600

   label  linux
          kernel vmlinuz
          append initrd=initrd.img   method=ftp://192.168.17.55/centos7

   label linux text
        kernel vmlinuz
        append text initrd =initrd.img method=ftp://192.168.17.55/centos7


准备yum仓库
mkdir /var/ftp/centos7
mount /dev/sr0  /var/ftp/centos7/

systemctl start dhcpd
systemctl start tftp.socket
systemctl start vsftpd




准备应答文件 自动安装操作系统
yum install system-config-kickstart -y      // 安装图形化界面  制作应答文件的工具


手动去添加应答文件过程  略


cd  /var/lib/tftpboot/
vim  pxelinux.cfg/default
default linux
timeout 600

   label  linux
          kernel vmlinuz
          append initrd=initrd.img   method=ftp://192.168.17.55/centos7  ks=ftp://192.168.17.55/centos7 

   label linux text
        kernel vmlinuz
        append text initrd =initrd.img method=ftp://192.168.17.55/centos7

服务端

复制dhcp文件的配置模板

编辑配置文件

编辑tftp的配置文件

将文件pxelinux.0到tftpboot路径下

挂载光盘镜像

下光盘镜像里创建一个配置文件

点开虚拟机进行系统配置(用超级管理员用户登录不然无法保存文件)

继续编写配置文件

相关推荐
X7x58 分钟前
网络基石:深入浅出路由交换技术,构建高效通信世界
网络·网络协议·交换技术
福老板的生意经18 分钟前
从成本失控到ROI翻倍:企业数字化营销投放的落地路径与工具选型指南
大数据·运维·人工智能
va学弟26 分钟前
Agent入门开发
java·运维·服务器·ai
@insist12330 分钟前
网络工程师-实战配置篇(二):精通 ACL 与策略路由,实现智能流量管控
大数据·网络·网络工程师·软考·软件水平考试
014-code42 分钟前
Chronicle Queue:把 Disruptor 的数据落盘
java·服务器
QH139292318801 小时前
KEYSIGHT E5071C 端网络分析仪
网络·功能测试·嵌入式硬件·物联网·单元测试·集成测试·模块测试
殷紫川1 小时前
Docker Compose实战指南
运维·docker
念何架构之路2 小时前
图解常见网络I/O复用模型
服务器·网络·php
j_xxx404_2 小时前
万字长文爆肝:彻底弄懂Linux文件系统(Ext2),从Inode、Block到Dentry核心机制全解析
linux·运维·服务器
2401_841495642 小时前
Linux C++ TCP 服务端经典的监听骨架
linux·网络·c++·网络编程·ip·tcp·服务端