一、PXE到底是什么黑科技?
当你需要给几十台裸机装系统时,抱着U盘跑来回跑简直要命。PXE(Preboot eXecution Environment)就是解决这个痛点的网络启动技术。它让电脑开机时通过网络自动获取引导程序和系统镜像,就像给每台机器配了个隐形安装U盘。在企业机房或网吧批量部署时,效率直接提升十倍不止。

二、搭建前的必备武器库
先确认你的战场配置:一台Linux主机当服务器(Ubuntu/CentOS都行),千兆交换机,以及待装机的客户机。软件三剑客缺一不可:
- DHCP服务器:给客户机分配IP和引导信息
- TFTP服务器:传输微型启动文件(小于1MB的轻量协议)
- 文件共享服务:HTTP/FTP/NFS选一个传系统镜像
实测提醒:客户机的网卡必须支持PXE,2010年后设备基本都兼容。
三、DHCP服务精准配置
用sudo apt install isc-dhcp-server装好DHCP后,打开/etc/dhcp/dhcpd.conf关键配置如下:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
option routers 192.168.1.1;
next-server 192.168.1.10; # 指向TFTP服务器IP
filename "pxelinux.0"; # 引导文件路径
}
启动服务systemctl restart isc-dhcp-server后,用tcpdump抓包检查是否正常分配IP。
四、TFTP服务搭建细节
安装tftpd-hpa后,重点注意目录权限:
- 默认目录
/var/lib/tftpboot需设777权限 - 复制引导文件:
cp /usr/lib/syslinux/pxelinux.0 /var/lib/tftpboot - 创建菜单目录:
mkdir -p /var/lib/tftpboot/pxelinux.cfg
测试小技巧:本地tftp 127.0.0.1连上后get pxelinux.0,能下载即成功。
五、制作智能启动菜单
在pxelinux.cfg目录创建默认菜单文件default:
LABEL Ubuntu 20.04
KERNEL ubuntu2004/vmlinuz
APPEND initrd=ubuntu2004/initrd.gz root=/dev/nfs nfsroot=192.168.1.10:/srv/install
这里用NFS做示例,实际可根据需求替换为HTTP路径。菜单支持多系统选择,添加Windows需配合WinPE镜像。
六、系统镜像的三种摆渡方式
根据网络环境选择镜像传输方案:
| 方式 | 速度 | 配置复杂度 | 适用场景 |
|---|---|---|---|
| HTTP | 快 | ★☆☆ | 跨网段部署 |
| NFS | 极快 | ★★☆ | 局域网内集群 |
| FTP | 中等 | ★★★ | 老旧设备兼容 |
以HTTP为例:安装apache后把ISO解压到/var/www/html/ubuntu2004,客户机就能通过http://服务器IP/ubuntu2004访问。
七、避坑指南与效能优化
踩坑实录:客户机卡在TFTP timeout?八成是防火墙作祟,用ufw allow 69/udp开放端口。启动菜单乱码?检查syslinux版本是否匹配。
加速秘籍:
- 镜像分卷压缩:把ISO里的大文件拆成1GB分卷,减少传输失败重试
- 启用HTTP并发:在apache配置中调高
MaxKeepAliveRequests - PXE代理中继:跨网段部署时用
dhcp-relay穿透路由器
最后祭出监控神器:tail -f /var/log/syslog,客户机启动过程全在日志里直播。
内容均以整理官方公开资料,价格可能随活动调整,请以购买页面显示为准,如涉侵权,请联系客服处理。
本文由星速云发布。发布者:星速云。禁止采集与转载行为,违者必究。出处:https://www.67wa.com/150128.html