一、环境准备
systemctl stop firewalld && systemctl disable firewalld setenforce 0 sed -i 's/SELINUX=.*/SELINUX=disabled/' /etc/sysconfig/selinux sudo apt-get update sudo apt-get install cobbler cobbler-web dhcp tftp-server pykickstart httpd xinetd 二、配置Cobbler核心参数
/etc/cobbler/settings,设置服务器基础信息:server: 192.168.1.100 # Cobbler服务器IP(需能被客户端访问) next_server: 192.168.1.100 # PXE引导服务器IP(通常与server一致) manage_dhcp: 1 # 允许Cobbler管理DHCP(需DHCP服务器配合) manage_dns: 0 # 若需Cobbler管理DNS,设为1(可选) sed -i 's/disable = yes/disable = no/' /etc/xinetd.d/tftp systemctl enable --now xinetd tftpd-hpa 三、导入Debian操作系统镜像
sudo mkdir -p /mnt/debian_iso sudo mount -o loop /path/to/debian.iso /mnt/debian_iso sudo cobbler import --path=/mnt/debian_iso --name=debian-12 --arch=x86_64 sudo umount /mnt/debian_iso --name:自定义镜像名称(如debian-12),后续创建系统时需引用;--arch:指定架构(如x86_64、arm64,需与ISO匹配)。四、添加目标系统配置
cobbler system add命令为每台客户端创建配置(替换为实际信息):sudo cobbler system add \ --name=web-server-01 \ # 系统名称(自定义) --profile=debian-12 \ # 关联的镜像profile(需与import的--name一致) --mac=00:1A:2B:3C:4D:5E \ # 客户端MAC地址(唯一标识) --ip-address=192.168.1.101 \ # 静态IP地址 --subnet=255.255.255.0 \ # 子网掩码 --gateway=192.168.1.1 \ # 网关地址 --hostname=web-server-01.local \# 主机名 --interface=eth0 \ # 网络接口名称(客户端实际接口) --static=1 # 使用静态IP(若为动态DHCP,设为0) debian-ks.cfg)上传至/var/lib/cobbler/kickstarts/;sudo cobbler system edit --name=web-server-01 --kickstart=/var/lib/cobbler/kickstarts/debian-ks.cfg 五、同步配置并启动服务
cobbler sync将配置同步到TFTP、DHCP等服务:sudo cobbler sync pxelinux.0)、复制镜像到TFTP目录,并更新DHCP配置(若manage_dhcp=1)。sudo systemctl enable --now cobblerd httpd 六、客户端批量部署
注意事项
debconf-set-selections预配置密码等参数;cobbler check错误(如TFTP未启用、DHCP配置缺失),需根据提示修复。