确保已安装并配置好Cobbler服务器(包括DHCP、TFTP、HTTP服务),且客户端已通过Cobbler完成初始部署。若未安装,可参考以下命令快速部署基础环境:
sudo apt-get update
sudo apt-get install cobbler cobbler-web tftp-server dhcp httpd pykickstart
在开始批量更新客户端前,需确保Cobbler服务器的系统软件包为最新版本,避免因服务器软件过时导致更新失败:
sudo apt update
sudo apt upgrade -y
若需更新客户端系统至新版本(如Debian 12),需先将新版本的ISO镜像导入Cobbler,替换旧镜像:
sudo mount -o loop /path/to/debian-new.iso /mnt
debian-new为自定义镜像名称):sudo cobbler import --path=/mnt --name=debian-new
sudo umount /mnt
cobbler profile list
若需自定义更新流程(如添加新软件包、修改配置文件),需编辑对应的Kickstart文件(默认路径:/var/lib/cobbler/kickstarts/)。例如,修改debian-ks.cfg文件,添加以下内容以更新系统:
%post
apt-get update && apt-get upgrade -y
apt-get autoremove -y
%end
每次修改镜像或Kickstart文件后,需同步配置使更改生效:
sudo cobbler sync
通过Cobbler的system update命令触发客户端批量更新,或让客户端下次启动时自动获取更新:
client-name为客户端名称):sudo cobbler system update --name=client-name --force
cobbler system list获取所有客户端名称,循环执行上述命令(需编写脚本实现)。/etc/cobbler/settings文件,添加或修改以下参数(单位:秒,如86400=1天):next_server_update = 86400
重启Cobbler服务使定时任务生效:sudo systemctl restart cobblerd
通过Cobbler日志文件实时查看更新状态,定位潜在问题:
tail -f /var/log/cobbler/cobbler.log