首页/系统/信创系统运维速查/PXE 网络批量安装
系统与安装65 条

PXE 网络批量安装

服务器网卡 PXE 引导 → DHCP 分配地址与引导文件 → TFTP 传内核与 initrd → 加载安装源完成安装,适合批量部署信创终端与服务器。

信创系统运维速查系统更新于 2026-10-13

PXE 是怎么跑起来的

PXE(Preboot eXecution Environment)是网卡固件自带的网络引导能力:机器开机后由 DHCP 下发 IP 与引导文件名,再从 TFTP 取到引导器,引导器加载内核与 initrd,最后用 HTTP/FTP/NFS 上的安装源完成安装。整条链路配上 Kickstart 应答文件,就能做到无人值守批量装信创终端与服务器。

基本信息

组件DHCP + TFTP + HTTP/FTP/NFS 安装源(可同机部署)
引导文件Legacy:pxelinux.0;UEFI:shimx64.efi + grubx64.efi
内核与镜像vmlinuz(内核)、initrd.img(引导内存盘)
关键参数inst.repo 指向安装源,inst.ks 指向应答文件
涉及端口67/68(DHCP)、69(TFTP)、80(HTTP 源)
权限要求服务端 root;客户端需开启网卡 PXE 引导

典型使用场景

  • 新机房批量上架服务器,减少一台台插盘的人力和时间
  • 信创终端整批替换,需要统一分区、统一初始软件集
  • 同一型号机器反复重装做测试,用同一应答文件保证环境一致
  • 装机时把网卡与磁盘配置一并写进 Kickstart,避免手工选错落盘位置
  • 内网离线环境:安装源放在内网 HTTP 服务上,不依赖外网

引导菜单与应答文件指向

引导菜单与应答文件指向
# grub.cfg / pxelinux 菜单片段(Legacy 写法)
label kylin
  kernel vmlinuz                        # 内核文件名,需与 tftp 目录内一致
  append initrd=initrd.img inst.repo=http://10.0.0.10/kylin inst.ks=http://10.0.0.10/ks/kylin.ks
  # inst.repo 安装源地址;inst.ks 无人值守应答文件地址

# UEFI 场景把内核参数写进 grub.cfg 的 menuentry,并把 DHCP 的 filename 指向 shimx64.efi

DHCP 关键配置

DHCP 关键配置
subnet 10.0.0.0 netmask 255.255.255.0 {
  range 10.0.0.100 10.0.0.200;      # 装机专用地址池,避免和业务 DHCP 抢段
  filename "pxelinux.0";            # Legacy 引导文件;UEFI 换成 shimx64.efi
  next-server 10.0.0.10;            # TFTP 服务器地址,必须是客户端可达的地址
}

故障现象定位

现象最可能的原因排查动作
一直等 DHCP,最终跳硬盘启动地址池耗尽、DHCP 未监听该网段看 DHCP 日志是否收到该网卡请求
拿到地址但提示 PXE-E32/E53next-server 或 filename 错误确认 TFTP 根目录与文件名一致
进入菜单后加载内核卡住vmlinuz/initrd 版本与菜单不匹配核对 tftp 目录内文件名与菜单写法
内核起来后报找不到安装源inst.repo 不可达或路径错服务端 curl 自测该 URL
装机中途停在分区/软件选择应答文件语法错或字段缺改用 ks 校验或看 anaconda 日志
混机型环境必须准备两套引导:UEFI 机器走 shim + grubx64.efi,Legacy 机器走 pxelinux.0,靠 DHCP 的 vendor-class-identifier 或分地址池区分。
整个 PXE 装机过程不加密,Kickstart 里如果写了初始口令,应放在内网受限服务上,装完立刻改密。

易错点

  • 把装机地址池与办公网 DHCP 混在一个 range 里,会把办公机也引到 PXE 菜单并可能触发重装,应分网段或用独立 DHCP 服务
  • UEFI 机型仍只准备 Legacy 引导文件,现象是拿到地址后直接跳硬盘启动,容易误判为网卡故障
  • 应答文件里写死了磁盘名(如 sda),换成 NVMe 或多盘机型后系统装到错误磁盘,应按盘符特征或型号匹配
  • TFTP 目录权限或防火墙未放行 69/udp,表现为引导文件下载超时,但日志里只看到 PXE-E32 这类笼统报错
  • 把 install 源指向外网地址,内网装机时直接失败;安装源、应答文件都应放在装机网络内可达的位置

数据来源与参考

  • openEuler 网络安装指南
  • Anaconda 网络引导文档
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌