在 CentOS 上排查 Cobbler 故障,通常可以按“服务状态 → 配置校验 → 网络/DHCP/TFTP → 镜像与同步 → 客户端日志”的顺序进行。下面给你一套实用排查清单。
systemctl status cobblerd
systemctl status httpd
systemctl status tftp
systemctl status dhcpd
常见异常:
cobblerd 未启动httpd 无法访问(SELinux / 防火墙)tftp 未监听 69 端口查看日志:
tail -f /var/log/cobbler/cobbler.log
journalctl -u cobblerd
cobbler check
它会列出:
根据提示逐条修复,然后:
cobbler sync
cobbler settings | less
重点检查:
server: Cobbler 服务器 IPnext_server: TFTP/DHCP 服务器 IPmanage_dhcp: 1 或 0pxe_just_once: 建议 1示例(常见错误):
server: 127.0.0.1 # ❌ 错误
next_server: 192.168.1.10
应为:
server: 192.168.1.10
next_server: 192.168.1.10
修改后:
cobbler sync
grep manage_dhcp /etc/cobbler/settings
cat /etc/cobbler/dhcp.template
确认:
next-server 指向 Cobbler IP在客户端:
dhclient -v eth0
服务器:
tail -f /var/log/messages
tftp 127.0.0.1
tftp> get pxelinux.0
ls /var/lib/tftpboot/
应有:
cobbler sync
cobbler distro list
cobbler profile list
cobbler import --path=/mnt --name=centos7
cobbler sync
cobbler profile report --name=centos7-x86_64
检查:
kickstartkernel options本地测试 KS:
cobbler validateks
getenforce
setenforce 0 # 临时关闭测试
永久:
vi /etc/selinux/config
SELINUX=permissive
firewall-cmd --list-all
firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=tftp --permanent
firewall-cmd --add-service=dhcp --permanent
firewall-cmd --reload
pxelinux.0anacondaCtrl + Alt + F2/F3cobbler check
cobbler sync
tail -f /var/log/cobbler/cobbler.log
tail -f /var/log/messages
如果你能具体说明:
我可以帮你精准定位到某一步。