一、环境准备
ubuntu-20.04.iso
)或通过debmirror
工具下载镜像(示例:sudo debmirror -a amd64 --method http --dist focal --section main,restricted,universe,multiverse --host archive.ubuntu.com /path/to/mirror
)。二、安装Cobbler及依赖 在Cobbler服务器上执行以下命令安装核心组件:
sudo apt update
sudo apt install cobbler cobbler-web dhcp3-server tftpd-hpa xinetd debmirror -y
cobbler
:核心管理工具;dhcp3-server
/isc-dhcp-server
:为客户端分配IP地址;tftpd-hpa
:提供TFTP服务,传输启动文件;xinetd
:管理TFTP等网络服务;debmirror
:用于下载Ubuntu镜像。三、配置Cobbler基础服务
启动并启用必要服务:
sudo systemctl start cobblerd
sudo systemctl enable cobblerd
sudo systemctl start xinetd
sudo systemctl enable xinetd
修改TFTP配置:
编辑/etc/xinetd.d/tftp
文件,将disable = yes
改为disable = no
,保存后重启xinetd:
sudo systemctl restart xinetd
配置DHCP服务:
/etc/dhcp/dhcpd.conf
,添加以下内容(根据网络环境调整):subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
option routers 192.168.1.1;
option domain-name-servers 8.8.8.8, 8.8.4.4;
filename "pxelinux.0";
next-server 192.168.1.2; # 替换为Cobbler服务器IP
}
/etc/default/isc-dhcp-server
,指定DHCP监听接口(如INTERFACESv4="eth0"
,替换为实际网卡名);sudo systemctl restart isc-dhcp-server
验证Cobbler初始配置:
运行sudo cobbler check
,根据提示修复问题(如同步时间、设置默认密码等)。重点修改/etc/cobbler/settings
中的default_password_crypted
字段(生成加密密码:openssl passwd -6 "yourpassword"
,替换为实际密码)。
四、导入Ubuntu镜像
手动导入镜像:
将Ubuntu ISO镜像挂载到服务器,然后使用cobbler import
命令导入:
mount -o loop /path/to/ubuntu-20.04.iso /mnt
sudo cobbler import --path=/mnt --name=ubuntu-20.04 --arch=x86_64
umount /mnt
--path
:ISO镜像挂载路径;--name
:镜像名称(自定义,如ubuntu-20.04
);--arch
:架构(x86_64
或amd64
)。自动下载镜像(可选):
若未提前下载镜像,可使用debmirror
工具从Ubuntu官方源下载(需提前安装debmirror
):
sudo debmirror -a amd64 --method http --dist focal --section main,restricted,universe,multiverse --host archive.ubuntu.com /path/to/mirror
sudo cobbler import --path=/path/to/mirror --name=ubuntu-20.04 --arch=x86_64
验证镜像导入:
运行sudo cobbler distro list
,应显示导入的Ubuntu镜像(如ubuntu-20.04
)。
五、创建Cobbler Profile(发行版配置) Profile定义了Ubuntu系统的安装参数(如内核、initrd、Kickstart文件等),使用以下命令创建:
sudo cobbler profile add \
--name=ubuntu-20.04-profile \ # Profile名称(自定义)
--distro=ubuntu-20.04 \ # 关联的镜像名称(需与import的名称一致)
--kickstart=/path/to/ubuntu.ks # Kickstart文件路径(用于自动化安装)
sudo cobbler profile list
获取默认路径);part /boot --fstype=ext4 --size=500
)、用户(如user --name=admin --password=encrypted_password
)等参数。六、添加目标系统到Cobbler 为目标机器创建系统记录,关联Profile和MAC地址(实现PXE启动时自动识别):
sudo cobbler system add \
--name=target-machine \ # 目标机器名称(自定义)
--profile=ubuntu-20.04-profile \ # 关联的Profile名称
--interface=eth0 \ # 目标机器的网络接口(如eth0)
--mac=AA:BB:CC:DD:EE:FF # 目标机器的实际MAC地址(必填)
--name
:目标机器的唯一标识;--profile
:关联的Profile名称(需与之前创建的一致);--mac
:目标机器的MAC地址(用于PXE启动时匹配)。七、同步Cobbler配置 所有配置完成后,执行同步命令将设置应用到TFTP、DHCP等服务:
sudo cobbler sync
/var/lib/tftpboot
),并更新DHCP配置。八、验证与部署
pxelinux.0
启动文件,读取Profile和Kickstart文件,开始自动化安装Ubuntu系统;九、后续管理
sudo cobbler distro list
;sudo cobbler distro edit --name=ubuntu-20.04
;sudo cobbler distro remove --name=ubuntu-20.04
;sudo cobbler sync
。