调试 CentOS 上 Cobbler 的问题,通常可以按“由外到内、由服务到配置”的思路进行。下面给你一套实用调试流程和常见错误对照表。
systemctl status cobblerd
systemctl status httpd
systemctl status tftp.socket
systemctl status dhcpd # 如果用 cobbler 管理 dhcp
常见现象:
cobblerd 起不来 → 看日志httpd 起不来 → 通常是 SELinux / 端口冲突tail -f /var/log/cobbler/cobbler.log
典型错误:
cobbler check
它会直接告诉你大部分配置问题,例如:
pxe 文件✅ 先解决 cobbler check 报的所有问题
cobbler settings | grep -E "server|next_server"
典型错误:
server 写成 IP,但客户端 DNS 解析不了next_server 不是 TFTP 服务器 IPcobbler sync
失败常见原因:
/etc/cobbler/dhcp.template 语法错误tftp <cobbler_ip>
get pxelinux.0
失败说明:
pxelinux.0default 文件错误(/var/lib/tftpboot/pxelinux.cfg/default)journalctl -u dhcpd
cat /etc/dhcp/dhcpd.conf
确认:
next-server 指向 Cobblerfilename "pxelinux.0";ausearch -m avc -ts recent
临时排查:
setenforce 0
正式解决:
setsebool -P cobbler_can_network_connect on
restorecon -Rv /var/lib/tftpboot
curl http://cobbler_ip/cobbler/
cobbler distro list
cobbler profile list
| 现象 | 可能原因 |
|---|---|
cobbler check 报错 |
配置未按要求 |
| PXE 卡在 DHCP | DHCP 没起 / next_server 错 |
| TFTP timeout | 防火墙 / tftp 未开 |
| 能 PXE 但黑屏 | default 文件错误 |
| sync 失败 | 模板语法错误 |
| SELinux 阻止 | 布尔值未开 |
cobbler checkcobbler synccobbler.log如果你愿意,可以把 具体报错信息(终端输出或日志)贴出来,我可以直接帮你定位是哪一类问题。