Ubuntu 环境下 Cobbler 的备份与恢复
一 备份范围与准备
- 建议备份的核心内容包括:
- 配置目录:/etc/cobbler(含主配置、模板与密钥等)。
- 引导文件:/var/lib/cobbler/loaders(如 pxelinux.0、menu.c32 等,用于 PXE 启动)。
- 镜像与仓库:/var/www/cobbler/ks_mirror、/var/www/cobbler/repo_mirror(导入的系统镜像与 YUM 仓库)。
- 日志目录:/var/log/cobbler(便于排错与审计)。
- 可选:自定义的 PXE/ISO 模板 与本地 ISO 文件(若有)。
- 准备要点:
- 备份前执行一次 cobbler check 与 cobbler sync,确保配置处于一致状态。
- 记录关键参数:server、next_server、manage_dhcp、manage_tftpd 等,便于恢复后核对。
- 若使用外部 DHCP/DNS,需单独备份其配置与作用范围,避免与 Cobbler 模板不一致。
二 执行备份
- 快速打包备份(配置文件为主)
- 备份命令示例:
- sudo tar -czvf cobbler_backup_$(date +%F).tar.gz
/etc/cobbler
/var/lib/cobbler/loaders
/var/www/cobbler/ks_mirror
/var/www/cobbler/repo_mirror
/var/log/cobbler
- 仅配置文件备份(轻量)
- 备份命令示例:
- sudo tar -czvf cobbler_etc_$(date +%F).tar.gz /etc/cobbler
- 定时备份(crontab)
- 每天 00:00 自动备份到 /backup:
- 0 0 * * * tar -czvf /backup/cobbler_backup_$(date +%F).tar.gz
/etc/cobbler /var/lib/cobbler/loaders /var/www/cobbler/ks_mirror /var/www/cobbler/repo_mirror /var/log/cobbler
- 说明
- 若曾自定义 DHCP 模板(如 /etc/cobbler/dhcp.template 或 dnsmasq.template),建议一并纳入备份。
三 执行恢复
- 全新主机最小化恢复步骤
- 安装 Cobbler 与依赖(示例):
- sudo apt-get update
- sudo apt-get install cobbler cobbler-web tftpd-hpa xinetd
- 停止服务(避免写入冲突):
- sudo systemctl stop cobblerd apache2 tftpd-hpa xinetd
- 恢复文件:
- 配置与数据:
- sudo tar -xzvf cobbler_backup_YYYY-MM-DD.tar.gz -C /
- 若使用外部 DHCP,按需恢复其配置与作用域。
- 启动服务:
- sudo systemctl start apache2 tftpd-hpa xinetd cobblerd
- 校验与同步:
- sudo cobbler check
- sudo cobbler sync
- 覆盖式恢复(已有 Cobbler 环境)
- 建议先备份当前环境与数据库(如 cobblerd 状态与现有镜像清单),再按上述步骤恢复文件并执行 cobbler sync。
四 验证与常见注意事项
- 验证要点
- 服务状态:
- sudo systemctl status cobblerd apache2 tftpd-hpa xinetd
- 配置一致性:
- sudo cobbler check
- sudo cobbler sync
- 引导可用性:
- 在客户端进行 PXE 启动,确认能获取 IP、下载 PXE 引导文件 并进入安装菜单。
- 镜像与仓库:
- 在 Web 界面或命令行确认 Distros/Profiles/Systems 与 ks_mirror、repo_mirror 是否完整。
- 常见注意事项
- 引导加载器:若 /var/lib/cobbler/loaders 缺失,执行 cobbler get-loaders 补齐常用引导文件(如 pxelinux.0、menu.c32)。
- DHCP 管理:若恢复后由 Cobbler 接管 DHCP,确认 manage_dhcp 与 next_server 设置正确,避免与现有 DHCP 冲突。
- 版本与路径差异:不同发行版/版本路径可能略有差异,恢复后用 cobbler check 逐项修正。