上一篇介绍了如何利用pxe安装linux,但需要手工操作的地方太对,也不方便日后维护,所以这一篇介绍如何用cobbler安装。cobbler可以理解为对pxe的二次封装,安装包是在epel源中的,所以要确保你的机器能联网(后面的配置也需要联网),支持cli和web两种管理模式。我这里用的是vm ware,配置的一个桥接网卡用来联网,一个仅主机模式的网卡用来搭配dhcp服务器。当然这里一样要检查selinux和防火墙是否开启,如开启了就需要关闭。
# wget -O /etc/yum.repos.d/epel-7.repo http://mirrors.aliyun.com/repo/epel-7.repo
# yum clean all
# yum makecache
# yum install -y cobbler cobbler-web dhcp
在前一篇中,利用网络远程安装linux需要搭建dhcp、http、tftp服务环境,而cobbler因为依赖关系,用yum安装会自动装tftp、http,而cobbler-web是网页端操作需要的包,装上操作比命令行更方便,也方便后期管理。
2. 重启服务
# systemctl start cobblerd httpd tftp
# systemctl enable cobblerd httpd tftp dhcpd
next_server: 127.0.0.1
server: 127.0.0.1
都改为你自己这台服务器的内网地址,我这里是192.168.10.10
至于第三点,由于是centos7系统,所以tftp的监听由systemd负责,如果是6的话,就需要开启xinetd服务。第四点需要下载boot-loaders的一些文件,# cobbler get-loadera
(再次强调,需要联网!)第五点我们在这里不需要,而第六点和第八点,针对于debian系统、硬件管理需要处理,所以我们这里忽略。那就剩下第七点,用此方法安装的系统,cobbler默认设置的root密码为cobbler,所以我们这里可以修改一下。
default_password_crypted: “ 1 1 1mF86/UHC$WvcIcX2t6crBz2onWxyac.”
根据提示执行# openssl passwd -1
设置一个口令,然后将其替换文件中的位置。至此,我们dhcp还没有配置。
4. 配置dhcpd服务,修改上面的settings文件,将manage_dhcp:改为1,让cobbler代理dhcp。
然后再编辑vim /etc/cobbler/dhcp.template,依靠这个模板文件来生成dhcp配置。
同步文件并重启cobbler、dhcp服务。
# cobbler sync
# systemctl restart cobblerd dhcpd
# cobbler import --path=/media/cdrom --name=CentOS7.6-X86_64
我这里就导入了一个版本的,如果有需要也可以导入多个。
6. 准备自动应答的ks文件。
cobbler默认带最小化安装,所以如果你有定制需要,可以自己建立一个ks文件,假设我见建的ks文件如下,文件名为ks_centos7.cfg,需要拷贝到cobbler的工作目录下,# cp ks_centos7.cfg /var/lib/cobbler/kickstarts/
请注意:下面的url路径需要改成$tree!
auth --enableshadow --passalgo=sha512
url --url=$tree
text
firewall --disabled
selinux --disabled
firstboot --enable
ignoredisk --only-use=sda
keyboard --vckeymap=us --xlayouts=‘us’
lang en_US.UTF-8
network --bootproto=dhcp --device=ens33 --onboot=on --ipv6=auto --no-activate
network --hostname=localhost.localdomain
services --disabled=“chronyd”
timezone Asia/Shanghai
bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda
clearpart --none --initlabel
zerombr
part swap --fstype=“swap” --ondisk=sda --size=2048
part /boot --fstype=“xfs” --ondisk=sda --size=500
part / --fstype=“xfs” --ondisk=sda --size=10240
part /data --fstype=“xfs” --ondisk=sda --size=1024
reboot
%packages
@^graphical-server-environment
@base
@core
@desktop-debugging
@dial-up
@fonts
@gnome-desktop
@guest-agents
@guest-desktop-agents
@hardware-monitoring
@input-methods
@internet-browser
@multimedia
@print-client
@x11
autofs
%end
%addon com_redhat_kdump --enable --reserve-mb=‘auto’
%end
%anaconda
pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty
pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok
pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty
%end
%post
systemctl disable initial-setup.service
systemctl set-default multi-user.target
%end
# cobbler profile add --name=CentOS7.6-X86_64_Graphic --distro=CentOS7.6-X86_64-x86_64 --kickstart=/var/lib/cobbler/kickstarts/ks_centos7.cfg
安装没有问题了,最后再来看一下cobbler-web,配置文件为/etc/httpd/conf.d/cobbler_web.conf。
注:如果是刚刚安装这个包,则需要重启httpd服务,因为它安装后会修改httpd配置,我这边上面一起装的,已经重启过了。访问前先创建管理员用户,默认验证方式为/etc/cobbler/users.digetst中的用户可以登录。我们来自己创建一个用户。
# vim /etc/cobbler/modules.conf
# htdigest -c /etc/cobbler/users.digest Cobbler admin
# cat /etc/cobbler/users.digest
现在打开网页访问,格式为https://ip/cobbler_web/。这个感叹号是因为我本机windows没有信任这个自签名的证书,安装一下就可以了,安装方式见附文。
我们这里点击“继续前往”,
注:这里如果出现500页面,请按照下面方式解决,这个是版本兼容问题,,不能高于1.8版本:
# rpm -qa | grep "python2-django"
# rpm -e --nodeps python2-django
# yum install python2-pip
# pip install --upgrade pip
# pip install Django==1.8.17
# pip install ipaddress
好了,正常的登录界面应该是这样子的
输入上面创建的admin账户和密码,各种配置以web端的形式展示,不用去命令行敲,是不是很方便很清晰?
**
**:
安装证书,使浏览器信任此证书,