[TOC]
本章章节 (1) Cobble介绍 (2) Cobbler安装配置 (3) Cobbler安装系统 (4) 定制化安装 (5) Cobbler的Web管理界面的安装与配置 (6) 入坑记
0x01 Cobbler 介绍 描述: Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等;可以使用命令行方式管理,也提供了基于Web的界面管理工具(cobbler-web),还提供了API接口,可以方便二次开发使用。
Cobbler是较早前的kickstart的升级版,优点是比较容易配置,还自带web界面比较易于管理,Cobbler内置了一个轻量级配置管理系统,但它也支持和其它配置管理系统集成,该工具使用python开发,小巧轻便(才15k行代码)
官网:http:#cobbler.github.io/
1.1 Cobbler集成的服务
PXE服务支持
DHCP服务管理
DNS服务管理(可选bind,dnsmasq)
电源管理
Kickstart服务支持
YUM仓库管理
TFTP(PXE启动时需要)
Apache(提供kickstart的安装源,并提供定制化的kickstart配置)
Cobbler组件:
发行版(distro) :表示一个操作系统,它承载了内核和initrd的信息,以及内核等其他数据。
仓库 (repository):保存了一个yum或者rsync仓库的镜像信息。
配置文件(profile):包含了一个发行版(distro),一个kickstart文件以及可能的仓库(repository),还包含了更多的内核参数等其他数据。
系统(system):表示要定制的具体客户机器,它包含了一个配置文件或一个镜像,还包含了ip和mac地址,电源管理(地址,凭据,类型)以及更为专业的数据信息。
镜像(image):可替换一个包含不属于此类别的文件的发行版对象(eg: 无法作为内核和initrd的对象)。
weiyigeek.top-COBBLER原理
注意:发行版和配置文件为必须配置项
发行版 distro 表示具体要导入安装的系统
配置文件 profile 表示对应系统的配置
系统 system 则可以定制某一台具体的机器安装,相当于一条数据库记录,可以省略
1.2 cobbler工作流程 Server端 :
第一步,启动Cobbler服务
第二步,进行Cobbler错误检查,执行cobbler check命令
第三步,进行配置同步,执行cobbler sync命令
第四步,复制相关启动文件文件到TFTP目录中
第五步,启动DHCP服务,提供地址分配
第六步,DHCP服务分配IP地址
第七步,TFTP传输启动文件
第八步,Server端接收安装信息
第九步,Server端发送ISO镜像与Kickstart文件
Client端 :
第一步,客户端以PXE模式启动
第二步,客户端获取IP地址
第三步,通过TFTP服务器获取启动文件
第四步,进入Cobbler安装选择界面
第五步,客户端确定加载信息
第六步,根据配置信息准备安装系统
第七步,加载Kickstart文件
第八步,传输系统安装的其它文件
第九步,进行安装系统
1.3 系统环境准备 使用的是CentOS7.x 和 VirtualBox(配置上网和NAT关闭DHCP服务);
[TOC]
本章章节 (1) Cobble介绍 (2) Cobbler安装配置 (3) Cobbler安装系统 (4) 定制化安装 (5) Cobbler的Web管理界面的安装与配置 (6) 入坑记
0x01 Cobbler 介绍 描述: Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等;可以使用命令行方式管理,也提供了基于Web的界面管理工具(cobbler-web),还提供了API接口,可以方便二次开发使用。
Cobbler是较早前的kickstart的升级版,优点是比较容易配置,还自带web界面比较易于管理,Cobbler内置了一个轻量级配置管理系统,但它也支持和其它配置管理系统集成,该工具使用python开发,小巧轻便(才15k行代码)
官网:http:#cobbler.github.io/
1.1 Cobbler集成的服务
PXE服务支持
DHCP服务管理
DNS服务管理(可选bind,dnsmasq)
电源管理
Kickstart服务支持
YUM仓库管理
TFTP(PXE启动时需要)
Apache(提供kickstart的安装源,并提供定制化的kickstart配置)
Cobbler组件:
发行版(distro) :表示一个操作系统,它承载了内核和initrd的信息,以及内核等其他数据。
仓库 (repository):保存了一个yum或者rsync仓库的镜像信息。
配置文件(profile):包含了一个发行版(distro),一个kickstart文件以及可能的仓库(repository),还包含了更多的内核参数等其他数据。
系统(system):表示要定制的具体客户机器,它包含了一个配置文件或一个镜像,还包含了ip和mac地址,电源管理(地址,凭据,类型)以及更为专业的数据信息。
镜像(image):可替换一个包含不属于此类别的文件的发行版对象(eg: 无法作为内核和initrd的对象)。
weiyigeek.top-COBBLER原理
注意:发行版和配置文件为必须配置项
发行版 distro 表示具体要导入安装的系统
配置文件 profile 表示对应系统的配置
系统 system 则可以定制某一台具体的机器安装,相当于一条数据库记录,可以省略
1.2 cobbler工作流程 Server端 :
第一步,启动Cobbler服务
第二步,进行Cobbler错误检查,执行cobbler check命令
第三步,进行配置同步,执行cobbler sync命令
第四步,复制相关启动文件文件到TFTP目录中
第五步,启动DHCP服务,提供地址分配
第六步,DHCP服务分配IP地址
第七步,TFTP传输启动文件
第八步,Server端接收安装信息
第九步,Server端发送ISO镜像与Kickstart文件
Client端 :
第一步,客户端以PXE模式启动
第二步,客户端获取IP地址
第三步,通过TFTP服务器获取启动文件
第四步,进入Cobbler安装选择界面
第五步,客户端确定加载信息
第六步,根据配置信息准备安装系统
第七步,加载Kickstart文件
第八步,传输系统安装的其它文件
第九步,进行安装系统
1.3 系统环境准备 使用的是CentOS7.x 和 VirtualBox(配置上网和NAT关闭DHCP服务);1 2 3 4 5 6 7 CentOS Linux release 7.6.1810 (Core) 3.10.0-957.1.3.el7.x86_64 [root@centos7 ~]# vi /etc/sysconfig/selinux #强制访问关闭 SELINUX=disabled [root@centos7 ~]# reboot #修改后需要重启 [root@centos7 ~]# getenforce Disabled
0x02 Cobbler安装配置 2.1 安装Cobbler 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 # author:WeiyiGeek # 配置阿里云的epel、yum源 # $ mv /etc/yum.repos.d/CentOS-Base.repo{,.bak} # $ wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/epel-7.repo [root@WeiyiGeek yum.repos.d]# yum -y install epel* [root@WeiyiGeek yum.repos.d]# yum makecache # 有想利用rsync安装的也可以安装好(使用于tftp类似) # cobbler检查kickstart语法错误 $ yum -y install xinetd syslinux dhcp tftp-server httpd rsync $ yum install -y python-pip $ pip install -U pip $ yum -y install cobbler cobbler-web pykickstart ----------------------------------------------------------------------------------------------- $ rpm -ql cobbler /etc/cobbler # 配置文件目录 /etc/cobbler/settings # cobbler主配置文件,这个文件是YAML格式 /etc/cobbler/dhcp.template # DHCP服务的配置模板 /etc/cobbler/tftpd.template # tftp服务的配置模板 /etc/cobbler/rsync.template # rsync服务的配置模板 /etc/cobbler/dnsmasq.template # DNS服务的配置模板 /etc/cobbler/iso # iso模板配置文件目录 /etc/cobbler/pxe # pxe模板文件目录 /etc/cobbler/power # 电源的配置文件目录 /etc/cobbler/users.conf # Web服务授权配置文件 /etc/cobbler/users.digest # 用于web访问的用户名密码配置文件 /etc/cobbler/modules.conf # Cobbler模块配置文件 /var/lib/cobbler # Cobbler数据目录 /var/lib/cobbler/config # 配置文件 /var/lib/cobbler/kickstarts # 默认存放kickstart文件 /var/lib/cobbler/loaders # 存放的各种引导程序 /var/lib/cobbler/triggers/ 用于存放用户定义的cobbler命令 /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日志
2.2 命令详解 cobbler 1 2 3 4 5 6 7 8 9 10 11 12 13 cobbler <distro|profile|system|repo|image|mgmtclass|package|file> ... [add|edit|copy|getks*|list|remove|rename|report] [options|--help] <aclsetup|buildiso|import|list|replicate|report|reposync|sync|validateks|version|signature|get-loaders|hardlink> [options|--help] cobbler import --help # 导入镜像 cobbler check #核对当前设置是否有问题 cobbler list #列出所有的cobbler元素 cobbler report #列出元素的详细信息 cobbler sync #同步配置到数据目录,更改配置最好都要执行下 cobbler reposync #同步yum仓库 cobbler distro #查看导入的发行版系统信息 cobbler system #查看添加的系统信息 cobbler profile #查看配置信息
2.3 配置Cobbler环境(重要) 1 2 3 4 5 6 7 [root@WeiyiGeek yum.repos.d]# getenforce Disabled $ /etc/init.d/iptables stop $ /etc/init.d/httpd restart $ /etc/init.d/cobblerd start $ cobbler check
weiyigeek.top-检查Cobbler的配置
看着上面的结果,一个一个解决;第1、2、6个问题,顺便修改其他功能1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 # author;WeiyiGeek cp /etc/cobbler/settings{,.bak} # 备份 # server,Cobbler服务器的IP 【提示1】 sed -i 's/^server: 127.0.0.1/server: 192.168.1.99/' /etc/cobbler/settings # next_server,如果用Cobbler管理DHCP,修改本项,作用不解释,看kickstart【提示2】 sed -i 's/^next_server: 127.0.0.1/next_server: 192.168.1.99/' /etc/cobbler/settings # 用Cobbler管理DHCP sed -i 's/^manage_dhcp: 0/manage_dhcp: 1/' /etc/cobbler/settings # 防止循环装系统,适用于服务器第一启动项是PXE启动。 sed -i 's/^pxe_just_once: 0/pxe_just_once: 1/' /etc/cobbler/settings # 设置新装系统的默认root密码123456,下面的命令来源于【提示7】。 # random-phrase-here为干扰码,可以自行设定。 # openssl passwd -1 -salt 'weiyigeek' '123456' $ 1$weiyigee $Kl6liFVRLuWROHNbd37Zm1 # vim /etc/cobbler/settings default_password_crypted: "$1$weiyigee$Kl6liFVRLuWROHNbd37Zm1" # [第3个问题] [root ~]# vim /etc/xinetd.d/tftp disable = no [root ~]# /etc/init.d/xinetd restart 停止 xinetd: [确定] 正在启动 xinetd: [确定] # [第5个问题] $ systemctl enable rsyncd.service $ systemctl start rsyncd $ systemctl restart cobblerd [重启即可] # [第4个问题] $ cobbler get-loaders task started: 2019-05-29_105819_get_loaders task started (id=Download Bootloader Content, time=Wed May 29 10:58:19 2019) downloading https://cobbler.github.io/loaders/README to /var/lib/cobbler/loaders/README downloading https://cobbler.github.io/loaders/COPYING.elilo to /var/lib/cobbler/loaders/COPYING.elilo downloading https://cobbler.github.io/loaders/COPYING.yaboot to /var/lib/cobbler/loaders/COPYING.yaboot downloading https://cobbler.github.io/loaders/COPYING.syslinux to /var/lib/cobbler/loaders/COPYING.syslinux downloading https://cobbler.github.io/loaders/elilo-3.8-ia64.efi to /var/lib/cobbler/loaders/elilo-ia64.efi downloading https://cobbler.github.io/loaders/yaboot-1.3.17 to /var/lib/cobbler/loaders/yaboot downloading https://cobbler.github.io/loaders/pxelinux.0-3.86 to /var/lib/cobbler/loaders/pxelinux.0 downloading https://cobbler.github.io/loaders/menu.c32-3.86 to /var/lib/cobbler/loaders/menu.c32 downloading https://cobbler.github.io/loaders/grub-0.97-x86.efi to /var/lib/cobbler/loaders/grub-x86.efi downloading https://cobbler.github.io/loaders/grub-0.97-x86_64.efi to /var/lib/cobbler/loaders/grub-x86_64.efi $ cd /var/lib/cobbler/loaders/ && ls
weiyigeek.top-loaders
2.4 配置DHCP 修改cobbler的dhcp模版,不要直接修改dhcp本身的配置文件,因为cobbler会覆盖。 /etc/cobbler/dhcp.template # DHCP服务的配置模板 (注意这里可能需要新建网卡)1 2 3 4 5 6 3: ens34: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:50:56:b3:69:06 brd ff:ff:ff:ff:ff:ff inet 192.168.1.99/24 brd 192.168.1.255 scope global noprefixroute ens34 valid_lft forever preferred_lft forever inet6 fe80::dfc:592e:b4a4:9877/64 scope link noprefixroute valid_lft forever preferred_lft forever
2.5 同步COBBLER配置(重要) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 # 同步最新cobbler配置,它会根据配置自动修改dhcp等服务。 $ cobbler sync task started: 2019-03-13_160834_sync task started (id=Sync, time=Wed Mar 13 16:08:34 2019) running pre-sync triggers cleaning trees removing: /var/lib/tftpboot/grub/images copying bootloaders trying hardlink /var/lib/cobbler/loaders/pxelinux.0 -> /var/lib/tftpboot/pxelinux.0 trying hardlink /var/lib/cobbler/loaders/menu.c32 -> /var/lib/tftpboot/menu.c32 trying hardlink /var/lib/cobbler/loaders/yaboot -> /var/lib/tftpboot/yaboot trying hardlink /usr/share/syslinux/memdisk -> /var/lib/tftpboot/memdisk trying hardlink /var/lib/cobbler/loaders/grub-x86.efi -> /var/lib/tftpboot/grub/grub-x86.efi trying hardlink /var/lib/cobbler/loaders/grub-x86_64.efi -> /var/lib/tftpboot/grub/grub-x86_64.efi # 再看一下dhcp的配置文件。 $ less /etc/dhcp/dhcpd.conf
2.6 服务自启动 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 # 方法1 systemctl enable httpd.service systemctl enable xinetd .service systemctl enable cobblerd systemctl enable dhcpd systemctl start httpd systemctl start xinetd systemctl start cobblerd systemctl start dhcpd # 方法2 编写Cobbler相关服务启动脚本(可选) cat >> /etc/init.d/cobbler<<EOF # !/bin/bash # chkconfig: 345 80 90 # description:cobbler case \$1 in start) service httpd start service xinetd start service dhcpd start service cobblerd start ;; stop) service httpd stop service xinetd stop service dhcpd stop service cobblerd stop ;; restart) service httpd restart service xinetd restart service dhcpd restart service cobblerd restart ;; status) service httpd status service xinetd status service dhcpd status service cobblerd status ;; sync) cobbler sync ;; *) echo "Input error,please in put 'start|stop|restart|status|sync'!" exit 2 ;; esac EOF # chmod +x /etc/init.d/cobbler # chkconfig cobbler on
3 Cobbler安装系统 3.1 导入镜像 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 $ mkdir /mnt/cdrom $ mount /dev/cdrom /mnt/cdrom mount: /dev/sr0 is write-protected, mounting read-only $ cobbler import --path=/mnt/ --name=CentOS-7.1-x86_64 --arch=x86_64 # --path 镜像路径 # --name 为安装源定义一个名字 # --arch 指定安装源是32位、64位、ia64, 目前支持的选项有: x86│x86_64│ia64 # 安装源的唯一标示就是根据name参数来定义,本例导入成功后,安装源的唯一标示就是:CentOS-7.1-x86_64,如果重复,系统会提示导入失败。 $ cobbler distro list CentOS-7.1-x86_64 # 镜像存放目录,cobbler会将镜像中的所有安装文件拷贝到本地一份,放在/var/www/cobbler/ks_mirror下的CentOS-7.1-x86_64目录下。 因此/var/www/cobbler目录必须具有足够容纳安装文件的空间。 $ cd /var/www/cobbler/ks_mirror/ && ls Centos-7-X84_64-x86_64 config [root@centos7 ks_mirror]# ls /var/www/cobbler/ks_mirror/Centos-7-X84_64-x86_64 CentOS_BuildTag EULA images LiveOS repodata RPM-GPG-KEY-CentOS-Testing-7 EFI GPL isolinux Packages RPM-GPG-KEY-CentOS-7 TRANS.TBL
weiyigeek.top-导入镜像
3.2 指定ks.cfg文件及调整内核参数 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 # Cobbler的ks.cfg文件存放位置 $ cd /var/lib/cobbler/kickstarts/ && ls sample_end.ks(默认使用的ks文件) # 在第一次导入系统镜像后,Cobbler会给镜像指定一个默认的kickstart自动安装文件在/var/lib/cobbler/kickstarts下的sample_end.ks。 rz # 上传准备好的ks文件 $ mv Cobbler-CentOS-7-x86_64.cfg Centos-7-X84_64-x86_64.cfg # 查看安装镜像文件信息 cobbler distro report --name=Centos-7-X84_64-x86_64 # cobbler profile report cobbler profile report --name=Centos-7-X84_64-x86_64 # 编辑profile,修改关联的ks文件 $ cobbler profile edit --name=Centos-7-X84_64-x86_64 --kickstart=/var/lib/cobbler/kickstarts/Centos-7-X84_64-x86_64.cfg # 修改安装系统的内核参数,在CentOS7系统有一个地方变了,就是网卡名变成eno16777736这种形式,但是为了运维标准化,我们需要将它变成我们常用的eth0,因此使用下面的参数。但要注意是CentOS7才需要下面的步骤,CentOS6不需要。 cobbler profile edit --name=Centos-7-X84_64-x86_64 --kopts='net.ifnames=0 biosdevname=0' # 每次修改完都要同步一次 $ cobbler sync
weiyigeek.top-配置同步
3.3 安装系统 到此就可以进行安装系统了,安装系统前可以修改文字1 2 3 4 5 6 7 # 修改Cobbler提示 $ vim /etc/cobbler/pxe/pxedefault.template menu vesamenu.c32 MENU TITLE Cobbler | ccccccc $ cobbler sync # 新建立一台虚拟机网络启动即可,效果如下:
weiyigeek.top-虚拟机网络启动
进入PXE选择界面进行安装系统;
weiyigeek.top-虚拟机网络启动
然后就进行系统的安装
weiyigeek.top-系统的安装
3.4 完善ks.cfg文件 文件大部分参数含义见kickstart文章,此处只讲一些不同的地方,同时可以参考模板文件。1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 $ cat CentOS-7.1-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 #CentOS7系统磁盘默认格式xfs 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 @base @compat-libraries @debugging @development tree nmap sysstat lrzsz dos2unix telnet iptraf ncurses-devel openssl-devel zlib-devel OpenIPMI-tools screen % end % post systemctl disable postfix.service % end
0x04 定制化安装 指定某台服务器使用指定ks文件,kickstart实现这功能可能比较复杂,但是Cobbler就很简单了。 区分一台服务器的最简单的方法就是物理MAC地址,物理服务器的MAC地址在服务器上的标签上写了或者虚拟机的MAC查看。1 2 3 4 5 6 7 cobbler system add --name=oldboy --mac=00:0C:29:7F:2F:A1 --profile=CentOS-7.1-x86_64 --ip-address=10.0.0.111 --subnet=255.255.255.0 --gateway=10.0.0.2 --interface=eth0 --static=1 --hostname=oldboy.example.com --name-servers="114.114.114.114 8.8.8.8" # --name 自定义,但不能重复 # 查看定义的列表 $ cobbler system list oldboy $ cobbler sync
0x05 Cobbler的Web管理界面的安装与配置 我们上面已经安装cobbler-web软件,我们访问网站https://10.22.53.12/cobbler_web即可;
weiyigeek.top-cobbler-web
可以直接利用网页上进行import 设置 profiles 内核参数 biosdevname=0 net.ifnames=0
weiyigeek.top-profiles
5.1 配置Cobbler Web 文件 网站路径:/usr/share/cobbler/web/ 网站配置文件路径:/etc/httpd/conf.d/cobbler_web.conf Web服务授权配置文件: /etc/cobbler/users.conf 用于web访问的用户名密码配置文件: /etc/cobbler/users.digest1 2 3 4 5 6 7 8 9 10 11 12 13 14 [root@WeiyiGeek ~]# cat /etc/cobbler/users.digest cobbler:Cobbler:a2d6bae81669d707b72c0bd9806e01f3 # 设置Cobbler web用户登陆密码 # 在Cobbler组添加cobbler用户,提示输入2遍密码确认 [root@WeiyiGeek ~]# htdigest /etc/cobbler/users.digest "Cobbler" cobbler Changing password for user cobbler in realm Cobbler New password: 123456 Re-type new password:123456 # 同步重启服务即可 $ cobbler sync $ /etc/init.d/httpd restart $ /etc/init.d/cobblerd restart
0x06 入坑记 问题1:安装源中无Cobbler的包? 原因:#可以看到cobbler、cobbler_web没有安装成功,那是因为常规yum源中没有关于cobbler的包,不过不用着急,我们需要在配置一个epel源,就可以了。 解决方法:1 2 3 # 配置epel源 [root@WeiyiGeek yum.repos.d]# yum -y install epel* [root@WeiyiGeek yum.repos.d]# yum makecache
问题2:安装cobbler-web未能成功提示Django依赖问题 解决方法:1 2 3 4 5 6 7 Error: Package: cobbler-web-2.6.11-7.git95749a6.el6.noarch (epel) Requires: Django >= 1.4 $ wget https:#raw.githubusercontent.com/pypa/get-pip/master/2.6/get-pip.py $ python2.6 get-pip.py $ pip install --upgrade pip [root@WeiyiGeek yum.repos.d]# pip install Django==1.5.8
问题3:提示没有找到内核镜像,其实就是 没有加载一个菜单问题 在cobbler sync后修改了tftp数据目录中pxeliunx.cfg/default 的memu 却没有把我们ISO项目中的vesamenu.c32赋值到该目录中。
weiyigeek.top-问题3
1 2 3 $ cp /mnt/cdrom/isolinux/vesamenu.c32 /var/lib/tftpboot/ [root@centos7 tftpboot]# ls boot etc grub images images2 memdisk ppc pxelinux.0 pxelinux.cfg s390x vesamenu.c32 vesamenu.c32.bak yaboot
问题4:我们在访问CobblerWeb的时候,发现服务器报500错误,经过检查httpd的日志发现报错如下
weiyigeek.top-问题4
错误原因:(没有采用https),这个报错是由于centos 7默认安装的python-django版本过高,cobbler还存在一些bug未修复,因此,我们需要将djaogo框架降到低版本。
解决办法:1 2 3 4 5 6 7 8 9 10 11 # 首先,查询当前系统安装的django版本,然后卸载 rpm -qa |grep django rpm -e python2-django-*.el7.noarch --nodeps # 安装较低版本的django yum -y install python2-django16 # 重启httpd服务 systemctl restart httpd 需要访问 https 的网站
问题5:debmirror package is not installed, it will be required to manage debian deployments and repositories 解决办法 : debian 安装用,暂时可以不管;如果需要安装,下载地址为:http://rpmfind.net/linux/rpm2html/search.php?query=debmirror
问题6:fencing tools were not found, and are required to use the (optional) power management features. install cman or fence-agents to use them 解决办法 : 关于电源管理(跟DELl 远程控制协议类似东西?),也暂时不管。
问题7:补充脚本 1 2 3 4 5 6 7 echo -e "\n############################\n#安装COBBLER及其依赖\n####################################\n" echo "--[安装完毕]--"