CentOS 上 Cobbler 恢复系统设置的实用步骤
一、恢复前的准备与备份
- 先备份当前环境与关键配置,便于回滚:
- 备份配置文件:
- cp /etc/cobbler/settings{,.bak}
- cp /etc/cobbler/dhcp.template{,.bak}
- 备份镜像与配置清单(便于核对恢复完整性):
- cobbler distros list
- cobbler profile list
- cobbler distro report
- 备份 Kickstart 与导入的镜像内容:
- cp -a /var/lib/cobbler/kickstarts /path/to/backup/kickstarts
- 如有自定义导入目录(如 /var/www/cobbler/ 或 /var/www/html/cobbler/),一并打包备份
- 建议在变更窗口前完成上述备份,并保留一份离线副本。
二、恢复 Cobbler 配置
- 恢复配置文件:
- cp /path/to/backup/settings.bak /etc/cobbler/settings
- cp /path/to/backup/dhcp.template.bak /etc/cobbler/dhcp.template
- 校正关键项(示例,按实际网络调整):
- /etc/cobbler/settings 中确保:
- manage_dhcp: 1(由 Cobbler 管理 DHCP)
- manage_tftpd: 1(由 Cobbler 管理 TFTP)
- next_server: Cobbler 服务器 IP
- 使配置生效:
- cobbler sync
- 重启相关服务(按系统启用情况选择):
- systemctl restart cobblerd
- systemctl restart httpd
- 若使用 xinetd 管理 tftp:systemctl restart xinetd
- 若由 Cobbler 管理 DHCP:systemctl restart dhcpd
- 校验:
三、恢复镜像与 Kickstart
- 恢复 Kickstart 文件:
- cp -a /path/to/backup/kickstarts/* /var/lib/cobbler/kickstarts/
- 恢复导入的发行版镜像:
- 方式 A(有原始 ISO 时优先):重新导入
- mount /dev/cdrom /mnt
- cobbler import --name=“centos7.9-x86_64” --arch=x86_64 --path=/mnt
- 方式 B(保留原导入目录时):将备份的镜像内容拷回导入根目录(如 /var/www/cobbler/ 或 /var/www/html/cobbler/),然后执行 cobbler sync 刷新
- 校验恢复结果:
- cobbler distros list
- cobbler profile list
- cobbler distro report
四、将客户端恢复到目标状态
- 已网络启动的客户端:重启并从 PXE 引导,按恢复后的 Profile/Kickstart 自动部署
- 需要重装某台主机时,可基于既有 system 条目重装:
- cobbler system add --name=host01 --profile=centos7-x86_64 --mac=52:54:00:xx:xx:xx --ip-address=192.168.1.100 --subnet=255.255.255.0 --gateway=192.168.1.1
- 之后让该主机 PXE 启动以自动安装
- 验证要点:
- 网络参数(IP/网关/DNS)与 Kickstart 一致
- 分区、软件包、用户与密钥按 Kickstart 预期生效
五、常见故障排查
- DHCP 不分配地址:
- 确认 /etc/cobbler/settings 中 manage_dhcp=1,next_server 指向 Cobbler 服务器 IP
- 检查 /etc/cobbler/dhcp.template 子网与网关配置,执行 cobbler sync 后重启 dhcpd
- TFTP 启动失败:
- 确认 manage_tftpd=1,执行 cobbler sync 后重启 tftp(或 xinetd)
- 客户端找不到安装源或 KS 文件:
- 确认 httpd 正常、导入目录与 Kickstart 路径正确,执行 cobbler sync 刷新
- 配置校验报错:
- 运行 cobbler check,按提示逐项修复(常见为目录权限、服务未启动、配置项缺失)