跳转至

02-自动化装机工具-cobbler

cobbler基础知识

Cobbler介绍

Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等。

Cobbler可以使用命令行方式管理,也提供了基于Web的界面管理工具(cobbler-web),还提供了API接口,可以方便二次开发使用。

Cobbler是较早前的kickstart的升级版,优点是比较容易配置,还自带web界面比较易于管理。

Cobbler内置了一个轻量级配置管理系统,但它也支持和其它配置管理系统集成,如Puppet,暂时不支持SaltStack。

Cobbler官网:https://fedorahosted.org/cobbler/

Cobbler的服务

PXE服务支持

DHCP服务管理

DNS服务管理(可选bind,dnsmasq)

电源管理

Kickstart服务支持

YUM仓库管理

TFTP(PXE启动时需要)

Apache(提供kickstart的安装源,并提供定制化的kickstart配置)

cobbler系统环境

系统环境

[root@linux-node1 ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core) 

网络环境

注意:

虚拟机网卡采用NAT模式,不要使用桥接模式,因为稍后我们会搭建DHCP服务器,在同一局域网多个DHCP服务会有冲突。

VMware的NAT模式的dhcp服务也关闭,避免干扰。

image-20201014161518315

Cobbler安装配置

安装Cobbler

yum开始安装软件包

yum -y install cobbler cobbler-web dhcp tftp-server pykickstart httpd xinetd python-ctypes tftp lrzsz vim wget

开始启动服务

systemctl start httpd
systemctl start cobblerd

检查cobbler

cobbler check

配置文件说明

[root@linux-node1 ~]# rpm -ql cobbler  # 查看安装的文件,下面列出部分。
/etc/cobbler                  # 配置文件目录
/etc/cobbler/settings           # cobbler主配置文件,这个文件是YAML格式,Cobbler是python写的程序。
/etc/cobbler/dhcp.template      # DHCP服务的配置模板
/etc/cobbler/tftpd.template     # tftp服务的配置模板
/etc/cobbler/rsync.template     # rsync服务的配置模板
/etc/cobbler/iso                # iso模板配置文件目录
/etc/cobbler/pxe                # pxe模板文件目录
/etc/cobbler/power              # 电源的配置文件目录
/etc/cobbler/users.conf         # Web服务授权配置文件
/etc/cobbler/users.digest       #用于web访问的用户名密码配置文件
/etc/cobbler/dnsmasq.template   #DNS服务的配置模板
/etc/cobbler/modules.conf       # Cobbler模块配置文件
/var/lib/cobbler                # Cobbler数据目录
/var/lib/cobbler/config         #配置文件
/var/lib/cobbler/kickstarts     # 默认存放kickstart文件
/var/lib/cobbler/loaders        # 存放的各种引导程序
/var/www/cobbler                # 系统安装镜像目录
/var/www/cobbler/ks_mirror      # 导入的系统镜像列表
/var/www/cobbler/images         # 导入的系统镜像启动文件
/var/www/cobbler/repo_mirror  # yum源存储目录
/var/log/cobbler                # 日志目录
/var/log/cobbler/install.log        # 客户端系统安装日志
/var/log/cobbler/cobbler.log    # cobbler日志

配置Cobbler

1.修改常见配置文件

IPADDR=192.168.1.212
sed -i 's/server: 127.0.0.1/server: '${IPADDR}'/' /etc/cobbler/settings && grep "server: ${IPADDR}" /etc/cobbler/settings
sed -i 's/next_server: 127.0.0.1/next_server: '${IPADDR}'/' /etc/cobbler/settings && grep "next_server: ${IPADDR}" /etc/cobbler/settings
sed -i 's/manage_dhcp: 0/manage_dhcp: 1/' /etc/cobbler/settings && grep 'manage_dhcp: 1' /etc/cobbler/settings
sed -i 's/pxe_just_once: 0/pxe_just_once: 1/' /etc/cobbler/settings && grep 'pxe_just_once: 1' /etc/cobbler/settings
sed -i "s#manage_rsync: 0#manage_rsync: 1#g"  /etc/cobbler/settings && grep "manage_rsync: 1" /etc/cobbler/settings

2.设置新装系统的默认root密码123456

[root@Cobbler ~]# vim /etc/cobbler/settings 
#最终修改的结果
default_password_crypted: "$1$root$j0bp.KLPyr.u9kgQ428D10"

#生产秘钥的方式
openssl passwd -1 -salt 'root' '123456'   

3.下载文件,如果网速慢可以上传

cobbler get-loaders

cd /var/lib/cobbler/loaders/
tar xf cobbler-get-loaders.tar.gz
mv cobbler-get-loaders/* .
rm -fr cobbler-get-loaders cobbler-get-loaders.tar.gz

4.修改tftp的参数

[root@Cobbler loaders]# vi /etc/xinetd.d/tftp
        disable                 = no

5.重启相关服务

systemctl restart xinetd
systemctl restart cobblerd
systemctl enable rsyncd.service
systemctl start rsyncd.service

配置DHCP

# 修改cobbler的dhcp模版,不要直接修改dhcp本身的配置文件,因为cobbler会覆盖。
[root@Cobbler ~]# vim /etc/cobbler/dhcp.template
subnet 192.168.1.0 netmask 255.255.255.0 {
     option routers             192.168.1.254;
     option domain-name-servers 192.168.1.254;
     option subnet-mask         255.255.255.0;
     range dynamic-bootp        192.168.1.250 192.168.1.254;

同步cobbler

# 同步最新cobbler配置,它会根据配置自动修改dhcp等服务。
[root@linux-node1 ~]# cobbler sync   # 同步所有配置,可以仔细看一下sync做了什么。
task started: 2015-12-03_204822_sync
task started (id=Sync, time=Thu Dec  3 20:48:22 2015)
running pre-sync triggers
running shell triggers from /var/lib/cobbler/triggers/sync/post/*
running python triggers from /var/lib/cobbler/triggers/change/*
running python trigger cobbler.modules.scm_track
running shell triggers from /var/lib/cobbler/triggers/change/*
*** TASK COMPLETE ***


# 再看一下dhcp的配置文件。
[root@linux-node1 ~]# less /etc/dhcp/dhcpd.conf
# ******************************************************************
# Cobbler managed dhcpd.conf file
# generated from cobbler dhcp.conf template (Thu Dec  3 12:48:23 2015)
# Do NOT make changes to /etc/dhcpd.conf. Instead, make your changes
# in /etc/cobbler/dhcp.template, as /etc/dhcpd.conf will be
# overwritten.
# ******************************************************************
ddns-update-style interim;
…………

设置开机启动

启动相关服务并设置开机启动(可选)

启动相关服务并设置开机启动(可选) 
systemctl enable httpd
systemctl enable xinetd
systemctl enable cobblerd
systemctl enable dhcpd
systemctl enable rsyncd

systemctl start httpd
systemctl start xinetd
systemctl start cobblerd
systemctl start dhcpd
systemctl start rsyncd

关闭相关服务并设置禁用开机启动(可选)

systemctl disable httpd
systemctl disable xinetd
systemctl disable cobblerd
systemctl disable dhcpd
systemctl disable rsyncd

systemctl stop httpd
systemctl stop xinetd
systemctl stop cobblerd
systemctl stop dhcpd
systemctl stop rsyncd

查看关闭服务的状态信息

systemctl status httpd
systemctl status xinetd
systemctl status cobblerd
systemctl status dhcpd
systemctl status rsyncd

Cobbler管理

查看命令帮助

[root@linux-node1 ~]# cobbler
usage
=====
cobbler <distro|profile|system|repo|image|mgmtclass|package|file> ... 
        [add|edit|copy|getks*|list|remove|rename|report] [options|--help]
cobbler <aclsetup|buildiso|import|list|replicate|report|reposync|sync|validateks|version|signature|get-loaders|hardlink> [options|--help]
[root@linux-node1 ~]# cobbler import --help  # 导入镜像
Usage: cobbler [options]
Options:
  -h, --help            show this help message and exit
  --arch=ARCH           OS architecture being imported
  --breed=BREED         the breed being imported
  --os-version=OS_VERSION
                        the version being imported
  --path=PATH           local path or rsync location
  --name=NAME           name, ex 'RHEL-5'
  --available-as=AVAILABLE_AS
                        tree is here, don't mirror
  --kickstart=KICKSTART_FILE
                        assign this kickstart file
  --rsync-flags=RSYNC_FLAGS
                        pass additional flags to rsync
cobbler check       #核对当前设置是否有问题
cobbler list        #列出所有的cobbler元素
cobbler report      #列出元素的详细信息
cobbler sync        #同步配置到数据目录,更改配置最好都要执行下
cobbler reposync    #同步yum仓库
cobbler distro      #查看导入的发行版系统信息
cobbler system      #查看添加的系统信息
cobbler profile     #查看配置信息

导入centos7.6镜像

下载centos minimal镜像

http://124.236.120.248:50001/ctyun/centos-iso/iso/CentOS/CentOS-7-x86_64-Minimal-1810.iso

挂载CentOS7的系统镜像

mount CentOS-7-x86_64-Minimal-1810.iso /mnt/

# umount -lf /mnt/

导入系统镜像

cobbler import --path=/mnt/ --name=CentOS-7.6-x86_64 --arch=x86_64

# --path 镜像路径
# --name 为安装源定义一个名字
# --arch 指定安装源是32位、64位、ia64, 目前支持的选项有: x86│x86_64│ia64
# 安装源的唯一标示就是根据name参数来定义,本例导入成功后,安装源的唯一标示就是:CentOS-7.6-x86_64,如果重复,系统会提示导入失败。
# 镜像存放目录,cobbler会将镜像中的所有安装文件拷贝到本地一份,放在/var/www/cobbler/ks_mirror下的CentOS-7.1-x86_64目录下。因此/var/www/cobbler目录必须具有足够容纳安装文件的空间。

检查导入的系统镜像

[root@linux-node1 ~]# ls -l /var/www/cobbler/ks_mirror/
CentOS-7.1-x86_64  config
[root@linux-node1 ~]# ls /var/www/cobbler/ks_mirror/CentOS-7.6-x86_64/
CentOS_BuildTag  GPL       LiveOS    RPM-GPG-KEY-CentOS-7
EFI              images    Packages  RPM-GPG-KEY-CentOS-Testing-7
EULA             isolinux  repodata  TRANS.TBL

打开浏览器输入(检查)

http://192.168.1.212/cobbler/ks_mirror/CentOS-7.6-x86_64/

image-20201014161837493

导入esxi6.7镜像

http://124.236.120.248:50001/ctyun/images/images-vmware/esxi6.7_u3/VMware-VMvisor-Installer-6.7.0.update03-14320388.x86_64.iso

umount -lf /mnt/
mount VMware-VMvisor-Installer-6.7.0.update03-14320388.x86_64.iso /mnt/
cobbler import --path=/mnt/ --name=esxi-6.7-x86_64 --arch=x86_64

# umount -lf /mnt/

导入ks配置文件-centos

开始编写ks配置文件

# Cobbler的ks.cfg文件存放位置
[root@linux-node1 ks_mirror]# cd /var/lib/cobbler/kickstarts/
root@linux-node1 ks_mirror]# vim centos-7.6-x86_64.cfg 
# Cobbler for Kickstart Configurator for CentOS 7.6
install
url --url=$tree
text
lang en_US.UTF-8
keyboard us
zerombr
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
$SNIPPET('network_config')
timezone --utc Asia/Shanghai
authconfig --enableshadow --passalgo=sha512
rootpw  --iscrypted $default_password_crypted
clearpart --all --initlabel
part / --fstype xfs --size 51200 --ondisk=sda
part /var --fstype xfs --size 1 --grow --ondisk=sda
firstboot --disable
selinux --disabled
firewall --disabled
logging --level=info
poweroff
%pre
$SNIPPET('log_ks_pre')
$SNIPPET('kickstart_start')
$SNIPPET('pre_install_network_config')
$SNIPPET('pre_anamon')
%end
%packages
@^minimal
@core
kexec-tools
%end
%post
systemctl disable postfix.service
%end

查看ks文件信息

[root@linux-node1 ~]# cobbler list
distros:
   CentOS-7.6-x86_64
profiles:
   CentOS-7.6-x86_64
# 查看安装镜像文件信息
[root@linux-node1 ~]# cobbler distro report --name=CentOS-7.6-x86_64
Name                           : CentOS-7.6-x86_64
Fetchable Files                : {}
Initrd                         : /var/www/cobbler/ks_mirror/CentOS-7.1-x86_64/images/pxeboot/initrd.img
Kernel                         : /var/www/cobbler/ks_mirror/CentOS-7.1-x86_64/images/pxeboot/vmlinuz
Owners                         : ['admin']
Red Hat Management Key         : <<inherit>>
Red Hat Management Server      : <<inherit>>
Template Files                 : {}
# 查看所有的profile设置
[root@linux-node1 ~]# cobbler profile report
# 查看指定的profile设置
[root@linux-node1 ~]# cobbler profile report --name=CentOS-7.6-x86_64
Name                           : CentOS-7.1-x86_64
TFTP Boot Files                : {}
Comment                        : 
Virt Disk Driver Type          : raw
Virt File Size(GB)             : 5
Virt Path                      : 
Virt RAM (MB)                  : 512
Virt Type                      : kvm

编辑profile,修改关联的ks文件

cobbler profile edit --name=CentOS-7.6-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos-7.6-x86_64.cfg 

导入ks配置文件-esxi

[root@Linux-node-Cobbler ]# cd /var/lib/cobbler/kickstarts/
[root@Linux-node-Cobbler kickstarts]#  cat /var/lib/cobbler/kickstarts/esxi-6.7-x86_64.cfg 
# Test ESXi 6.7 ks file
accepteula
rootpw P@sswd.123
clearpart --firstdisk --overwritevmfs
install --firstdisk --overwritevmfs
network --bootproto=dhcp --device=vmnic0

编辑profile,修改关联的ks文件

cobbler profile edit --name=esxi-6.7-x86_64 --kickstart=/var/lib/cobbler/kickstarts/esxi-6.7-x86_64.cfg 

调整内核参数(可选)

修改安装系统的内核参数,在CentOS7系统有一个地方变了,就是网卡名变成eno16777736这种形式,但是为了运维标准化,我们需要将它变成我们常用的eth0,因此使用下面的参数。但要注意是CentOS7才需要下面的步骤,CentOS6不需要。

[root@linux-node1 ~]# cobbler profile edit --name=CentOS-7.6-x86_64 --kopts='net.ifnames=0 biosdevname=0'
[root@linux-node1 ~]# cobbler profile report CentOS-7.6-x86_64
Name                           : CentOS-7.1-x86_64
TFTP Boot Files                : {}
Distribution                   : CentOS-7.1-x86_64
Virt Path                      : 
Virt RAM (MB)                  : 512
Virt Type                      : kvm

每次修改完都要同步一次

[root@linux-node1 ~]# cobbler sync
received on stderr: 
running shell triggers from /var/lib/cobbler/triggers/sync/post/*
running python triggers from /var/lib/cobbler/triggers/change/*
running python trigger cobbler.modules.scm_track
running shell triggers from /var/lib/cobbler/triggers/change/*
*** TASK COMPLETE ***

自动安装系统

*可以很愉快的告诉你到这里就可以安装系统了!*

新建一台虚拟机,不解释,开机就可以看到下面的图片了!

img

** 有没有发现不美观的地方?**

网址不是我的!改!

#修改Cobbler提示
[root@linux-node1 ~]# vim /etc/cobbler/pxe/pxedefault.template
MENU TITLE Cobbler | http://www.zyops.com
[root@linux-node1 ~]# cobbler sync # 修改配置都要同步

OK,现在好看多了。选择第二项就可以继续装机了。你可以让系统飞着,然后接着看下文!! img

定制化安装系统

可能从学习kickstart开始就有人想怎样能够指定某台服务器使用指定ks文件,kickstart实现这功能可能比较复杂,但是Cobbler就很简单了。区分一台服务器的最简单的方法就是物理MAC地址。物理服务器的MAC地址在服务器上的标签上写了。虚拟机的MAC查看

image-20201014162044026

需要准备的信息字段:
装机mac:F4:E9:D4:D5:6C:B0
装机IP:192.168.1.251
装机子网掩码:255.255.255.0
装机网关:192.168.1.254
装机主机名称:10e129e177e91

BMC地址:10.254.178.91
BMC帐户:test
BMC密码:123456


配置定制化装机centos
cobbler system add --name=10e129e177e91 --mac=F4:E9:D4:D5:6C:B0 --profile=CentOS-7.6-x86_64 --ip-address=192.168.1.251 --subnet=255.255.255.0 --gateway=192.168.1.254 --interface=p5p1 --static=1 --hostname=10e129e177e91

配置定制化装机esxi
cobbler system add --name=10e129e177e91 --mac=F4:E9:D4:D5:6C:B0 --profile=esxi-6.7-x86_64 --ip-address=192.168.1.251 --subnet=255.255.255.0 --gateway=192.168.1.254 --interface=vmnic0 --static=1 --hostname=10e129e177e91

删除配置定制化规则
cobbler system remove --name=10e129e177e91

查看定义的列表
[root@linux-node1 ~]# cobbler system list
   oldboy
[root@linux-node1 ~]# cobbler sync

ipmitool远程管理

安装ipmitool工具:

\cp ipmitool /usr/bin/ipmitool
chmod +x /usr/bin/ipmitool
modprobe ipmi_watchdog ; modprobe ipmi_poweroff ; modprobe ipmi_devintf ; modprobe ipmi_si 
ipmitool -I lanplus -H 10.254.178.91 -U test -P 123456 power status

设置服务器从pxe启动
ipmitool -I lanplus -H 10.254.178.91 -U test -P 123456 chassis bootdev pxe
ipmitool -I lanplus -H 10.254.178.91 -U test -P 123456 power reset

设置服务器从disk启动
ipmitool -I lanplus -H 10.254.178.91 -U test -P 123456 power on ; sleep 5
ipmitool -I lanplus -H 10.254.178.91 -U test -P 123456 chassis bootdev disk
ipmitool -I lanplus -H 10.254.178.91 -U test -P 123456 power reset

再次开机安装就不再询问选择了,直接安装。

image-20220314233839605

开始自动化安装

image-20220314233937132

ipmitool串流装机

设置访问远程控制台、修改 vi /etc/default/grub
GRUB_CMDLINE_LINUX="intel_idle.max_cstate=0 crashkernel=auto rhgb quiet console=tty0 console=ttyS0,115200n8"

1.查看用户ID
ipmitool -I lanplus -H 10.254.178.34 -U admin -P 123456 user list
2.设置开启远程访问控制台
ipmitool -I lanplus -H 10.254.178.34 -U admin -P 123456 sol payload enable 1 15
备注 1表示第一个信道(一般1-8个信道挨个试) 15表示ipmi用户id 
3.访问远程控制台
ipmitool -I lanplus -H 10.254.178.34 -U admin -P 123456 sol activate
4.关闭访问远程控制台
ipmitool -I lanplus -H 10.254.178.34 -U admin -P 123456 sol deactivate

cobbler如何设置
cobbler profile edit --name=centos-7.6-x86_64 --kopts='console=tty0 console=ttyS0,115200n8'
cobbler sync

Cobbler管理界面

已经安装cobbler-web软件。

访问网址:

https://192.168.1.212/cobbler_web

默认用户名:cobbler 默认密码 :cobbler

img

/etc/cobbler/users.conf       # Web服务授权配置文件
/etc/cobbler/users.digest     # 用于web访问的用户名密码配置文件
[root@linux-node1 ~]# cat /etc/cobbler/users.digest
cobbler:Cobbler:a2d6bae81669d707b72c0bd9806e01f3
# 设置Cobbler web用户登陆密码
# 在Cobbler组添加cobbler用户,提示输入2遍密码确认
[root@linux-node1 ~]# htdigest /etc/cobbler/users.digest "Cobbler" cobbler
Changing password for user cobbler in realm Cobbler
New password: 123456
Re-type new password:123456
[root@linux-node1 ~]# cobbler sync
[root@linux-node1 ~]# /etc/init.d/httpd restart
停止 httpd:                                               [确定]
正在启动 httpd:                                           [确定]
[root@linux-node1 ~]# /etc/init.d/cobblerd restart
Stopping cobbler daemon:                                   [确定]
Starting cobbler daemon:                                   [确定]

以后就需要用123456这个密码登录了。

接下来的操作就是点点鼠标了。

常用KS文件

centos-7.x

[root@Linux-node-Cobbler ]# cd /var/lib/cobbler/kickstarts/
[root@Linux-node-Cobbler kickstarts]# cat CentOS-7.2-x86_64.cfg 
# Cobbler for Kickstart Configurator for CentOS 7.1 by yao zhang
install
url --url=$tree
text
lang en_US.UTF-8
keyboard us
zerombr
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
# Network information
$SNIPPET('network_config')
timezone --utc Asia/Shanghai
authconfig --enableshadow --passalgo=sha512
rootpw  --iscrypted $default_password_crypted
clearpart --all --initlabel
part /boot --fstype xfs --size 1024
part swap --size 1024
part / --fstype xfs --size 1 --grow
firstboot --disable
selinux --disabled
firewall --disabled
logging --level=info
reboot
%pre
$SNIPPET('log_ks_pre')
$SNIPPET('kickstart_start')
$SNIPPET('pre_install_network_config')
# Enable installation monitoring
$SNIPPET('pre_anamon')
%end
%packages
@^minimal
@core
kexec-tools
%end

%post
systemctl disable postfix.service
%end

esxi-6.x

[root@Linux-node-Cobbler ]# cd /var/lib/cobbler/kickstarts/
[root@Linux-node-Cobbler kickstarts]#  cat esxi-6.0-x86_64.cfg 
# Test ESXi 6.0 ks file
accepteula
rootpw 123456
clearpart --firstdisk --overwritevmfs
install --firstdisk --overwritevmfs
network --bootproto=dhcp --device=vmnic0

常见错误汇总

附:错误排除
# cobbler check 
The following are potential configuration items that you may want to fix:
1 : Must enable a selinux boolean to enable vital web services components, run: setsebool -P httpd_can_network_connect true 
2 : you need to set some SELinux content rules to ensure cobbler serves content correctly in your SELinux environment, run the following: /usr/sbin/semanage fcontext -a -t public_content_t "/tftpboot/.*" && /usr/sbin/semanage fcontext -a -t public_content_t "/var/www/cobbler"/images/.* 
3 : you need to set some SELinux rules if you want to use cobbler-web (an optional package), run the following: /usr/sbin/semanage fcontext -a -t httpd_sys_content_rw_t "/var/lib/cobbler/webui_sessions/.*"
解决:关闭selinux
# vim /etc/sysconfig/selinux 
SELINUX=disabled
4 : change 'disable' to 'no' in /etc/xinetd.d/tftp 
解决:编辑/etc/xinetd.d/tftp文件,将文件中的disable字段的配置由yes改为no
5 : change 'disable' to 'no' in /etc/xinetd.d/rsync 
解决:编辑/etc/xinetd.d/rsync文件,将文件中的disable字段的配置由yes改为no
6 : since iptables may be running, ensure 69, 80, and 25151 are unblocked 
解决:在iptables中将69,80,25151端口打开。如果仅仅只是在内部环境中使用,建议直接将防火墙关掉
7 : debmirror package is not installed, it will be required to manage debian deployments and repositories
解决:yum install debmirror
或:rpm -Uvh ftp://rpmfind.net/linux/epel/5/i386/debmirror-20090807-1.el5.noarch.rpm –nodeps –force
8 : ksvalidator was not found, install pykickstart 
解决:yum install pykickstart
9 : The default password used by the sample templates for newly installed machines (default_password_crypted in /etc/cobbler/settings) is still set to 'cobbler' and should be changed, try: "openssl passwd -1 -salt 'random-phrase-here' 'your-password-here'" to generate new one
解决: 修改默认密码就OK了,然后把密码写入到/etc/cobbler/settings中 
# openssl passwd -1 -salt 'random-phrase-here' 'your-password-here'
10 : comment 'dists' on /etc/debmirror.conf for proper debian support 
11 : comment 'arches' on /etc/debmirror.conf for proper debian support
解决:注释/etc/debmirror.conf 下面两行 
#@dists="sid"; 
@sections="main,main/debian-installer,contrib,non-free"; 
#@arches="i386";
12:fencing tools were not found, and are required to use the (optional) power management features. install cman or fence-agents to use them 
解决: yum install cman
修复完成,再用 cobbler check 检查一下,确认没问题后用 cobbler sync 做同步操作:
# cobbler check
No configuration problems found. All systems go.
13. comment out 'dists' on /etc/debmirror.conf for proper debian support
comment out 'arches' on /etc/debmirror.conf for proper debian supportvim              vi /etc/debmirror.conf
#注释掉@dists="sid"与@arches="i386即可
#@dists="sid";
#@arches="i386";
14. 较验cobbler check出错
Traceback (most recent call last):
 File "/usr/bin/cobbler", line 35, in ?
 sys.exit(app.main())
 File "/usr/lib/python2.4/site-packages/cobbler/cli.py", line 558, in main
 rc = cli.run(sys.argv)
 File "/usr/lib/python2.4/site-packages/cobbler/cli.py", line 202, in run
 self.token = self.remote.login("", self.shared_secret)
 File "/usr/lib64/python2.4/xmlrpclib.py", line 1096, in __call__
 return self.__send(self.__name, args)
 File "/usr/lib64/python2.4/xmlrpclib.py", line 1383, in __request
 verbose=self.__verbose
 File "/usr/lib64/python2.4/xmlrpclib.py", line 1147, in request
 return self._parse_response(h.getfile(), sock)
 File "/usr/lib64/python2.4/xmlrpclib.py", line 1286, in _parse_response
 return u.close()
 File "/usr/lib64/python2.4/xmlrpclib.py", line 744, in close
 raise Fault(**self._stack[0])
xmlrpclib.Fault:
解决方法:此为BUG,按下方操作执行即
service cobblerd restart
cobbler get-loaders

返回这个结果就OK了