pxe仅启动安装环境,kickstart执行自动化安装;需配置dhcp分配ip并指向tftp服务器、tftp提供pxelinux.0及内核文件、http/nfs/ftp提供镜像、ks.cfg定义分区密码等全流程。

PXE本身不装系统,只负责把机器“叫醒”并拉起安装环境;Kickstart才是真正替你点下一步、输密码、分硬盘的“自动操作员”。两者配合,才能让百台裸机开机即装、装完即用。
PXE服务端必须跑通三件事
- DHCP要能分配IP,并明确告诉客户端:“去192.168.x.x这台机器上,用TFTP下载
pxelinux.0” - TFTP服务得开着,且
/var/lib/tftpboot/下放好:-
pxelinux.0(来自syslinux包) -
centos7/vmlinuz和centos7/initrd.img(从ISO的isolinux目录复制) -
pxelinux.cfg/default(配置引导菜单,关键行含ks=http://192.168.x.x/centos7/ks.cfg)
-
- HTTP(或NFS/FTP)服务得把完整ISO镜像挂载或同步到
/var/www/html/centos7/,供安装过程读取软件包
Kickstart文件(ks.cfg)得覆盖所有人工环节
- 分区方案写死:用
part或autopart,别留交互 - root密码必须加密:用
openssl passwd -6生成sha512密文,填入rootpw --iscrypted $6$xxx - 时区、键盘、语言、网络(可指定固定IP或DHCP)、SELinux状态全写明
- 安装后脚本加
%post --interpreter /bin/bash段,比如关防火墙、配SSH密钥、启服务
百台裸机上线前只需两步
- 每台机器BIOS里打开“Network Stack Configuration”或“PXE Boot”,设为第一启动项
- 插上网线,接在同一二层网络(或确保DHCP+TFTP跨网段可达),开机即可
常见卡点提前避开
- 防火墙必须放行:UDP 67/68(DHCP)、UDP 69(TFTP)、TCP 80(HTTP)
-
ks.cfg路径若用HTTP,确保Web服务可直接curl访问到该文件(如curl http://192.168.x.x/centos7/ks.cfg) -
default文件里timeout设成1,避免等待;menu default标出默认项,防止卡在菜单
不复杂但容易忽略。











