温馨提示×

centos cobbler如何实现定制化安装

小樊
42
2025-10-07 02:23:39
栏目: 智能运维

CentOS Cobbler定制化安装实现步骤

1. 安装Cobbler及依赖组件

首先确保系统已连接互联网并具备管理员权限,通过以下命令安装Cobbler及其依赖(包括HTTP服务、DHCP、TFTP等核心组件):

sudo yum install cobbler cobbler-web httpd dhcp tftp-server pykickstart xinetd -y

2. 配置Cobbler主配置文件

编辑/etc/cobbler/settings文件,设置关键参数以启用核心服务:

  • 服务器与TFTP配置:设置server为Cobbler服务器IP(如192.168.1.100),next_server为TFTP服务器IP(通常与server一致);
  • 服务管理:将manage_dhcp设为1(让Cobbler自动管理DHCP服务),pxe_just_once设为1(避免客户端重复引导);
  • 默认密码:通过default_password_crypted设置加密后的root密码(可使用openssl passwd -6 "yourpassword"生成加密串)。
    修改完成后保存文件。

3. 准备并定制Kickstart文件

Kickstart文件是自动化安装的核心,需定义系统语言、分区、软件包等配置。

  • 获取基础模板:从现有系统复制模板(如/var/lib/cobbler/kickstarts/CentOS-7.0-x86_64.minimal.ks),或使用system-config-kickstart图形工具生成;
  • 自定义配置:编辑模板文件(如/var/lib/cobbler/kickstarts/centos7-custom.ks),重点调整以下部分:
    • 基础信息lang en_US.UTF-8(语言)、keyboard us(键盘布局)、timezone Asia/Shanghai(时区);
    • 磁盘分区clearpart --all --initlabel(清空磁盘)、part /boot --fstype=ext4 --size=500(引导分区)、part pv.01 --size=1 --grow(物理卷)、volgroup vg01 pv.01(卷组)、logvol / --fstype=ext4 --name=root --vgname=vg01 --size=1 --grow(根分区)、logvol swap --fstype=swap --name=swap --vgname=vg01 --size=2048(交换分区);
    • 软件包选择%packages部分添加所需软件包组(如@^minimal@corenet-toolsvim);
    • 后置脚本%post部分添加安装后自动执行的命令(如systemctl disable postfix禁用postfix服务)。
  • 测试Kickstart文件:使用virt-install或虚拟机测试文件有效性,确保安装流程符合预期。

4. 导入操作系统镜像

将CentOS ISO镜像导入Cobbler,生成可用于网络安装的文件:

sudo cobbler import --path=/path/to/CentOS-7.9.iso --name centos7.9 --arch x86_64

其中--path为ISO文件路径,--name为镜像名称(自定义),--arch为架构(如x86_64)。导入完成后,Cobbler会在/var/www/cobbler/ks_mirror/下生成对应的镜像文件。

5. 创建Cobbler配置文件

将Kickstart文件与导入的镜像关联,创建安装配置文件:

sudo cobbler profile edit --name centos7.9-custom --distro centos7.9 --kickstart=/var/lib/cobbler/kickstarts/centos7-custom.ks

其中--name为配置文件名称(自定义),--distro为导入的镜像名称(需与import命令中的--name一致),--kickstart为Kickstart文件路径。

6. 添加系统并启用PXE启动

为需要安装的客户端创建系统记录,并启用PXE网络启动:

sudo cobbler system add --name centos7-client1 --profile centos7.9-custom --netboot-enabled=true

其中--name为客户端名称(自定义),--profile为之前创建的配置文件名称,--netboot-enabled=true启用PXE启动。

7. 同步配置并启动服务

修改配置后,需同步Cobbler以应用更改:

sudo cobbler sync

同步完成后,启动Cobbler及相关服务并设置开机自启:

sudo systemctl start cobblerd httpd dhcpd tftp xinetd
sudo systemctl enable cobblerd httpd dhcpd tftp xinetd

8. 验证定制化安装

将客户端设置为PXE启动(通过网络启动),即可自动加载Kickstart文件进行定制化安装。安装完成后,检查系统语言、时区、分区、软件包及后置脚本是否按预期执行。

可选:添加后置定制脚本

若需更复杂的定制(如创建用户、安装额外软件),可创建后置脚本并关联到Kickstart文件:

  • 创建脚本/var/lib/cobbler/scripts/post_install.sh,内容如下:
    #!/bin/bash
    echo "Custom script executed after installation"
    useradd -m -s /bin/bash customuser
    echo "customuser:YourPassword123" | chpasswd
    
  • 设置权限chmod +x /var/lib/cobbler/scripts/post_install.sh
  • 关联脚本:在Kickstart文件的%post部分添加/var/lib/cobbler/scripts/post_install.sh,或在Cobbler配置中设置post_script参数。

0