kickstart是RedHat公司開源的軟件,因此對CentOS兼容性最好。html
原理:咱們將手動安裝的全部的詳細步驟記錄到一個文件中,而後kickstart經過讀取這個文件就能夠實現自動化安裝系統。linux
kickstart是一個項目的名稱。沒有這個軟件。使用者水平是高中以上web
cobbler是對kickstart的全部組件的封裝。使用者水平是初中以上。本質上就是網頁版本的kickstart。vim
kickstart的原理及組件app
環境準備curl
[root@kickstart ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) [root@kickstart ~]# uname -r 3.10.0-693.el7.x86_64 [root@kickstart ~]# getenforce Disabled [root@kickstart ~]# systemctl status firewalld.service ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled) Active: inactive (dead) Docs: man:firewalld(1) [root@kickstart ~]# hostname -I 10.0.0.201 172.16.1.201
安裝DHCPsocket
yum -y install dhcp
配置DHCPurl
cat >>/etc/dhcp/dhcpd.conf<<EOF subnet 172.16.1.0 netmask 255.255.255.0 { range 172.16.1.100 172.16.1.199; option subnet-mask 255.255.255.0; default-lease-time 21600; max-lease-time 43200; next-server 172.16.1.201; filename "/pxelinux.0"; } EOF
啓動dhcp查看日誌spa
[root@kickstart ~]# systemctl start dhcpd [root@kickstart ~]# systemctl status dhcpd tailf /var/log/messages
DHCP服務對kickstart系統的影響程度日誌
新建空白虛擬機,建完後作快照。
TFTP沒有安裝致使報錯
安裝TFTP服務
安裝
[root@kickstart ~]# yum -y install tftp-server
啓動
systemctl start tftp.socket
TFTP服務對kickstart系統的影響程度
上面報錯是在TFTP服務的根目錄找不到啓動文件pxelinux.0
[root@kickstart ~]# cd /var/lib/tftpboot/ # TFTP服務的根目錄 [root@kickstart tftpboot]# ls [root@kickstart tftpboot]# yum -y install syslinux cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
首先排除最簡單故障緣由:selinux是否關閉,防火牆是否關閉
上面的錯誤是由於pxelinux.0這個小系統的配置文件(default)不存在,或者文件名不對
如何找到這個配置文件
第一步:掛載鏡像
第二步
mkdir -p /var/www/html/CentOS7 mount /dev/cdrom /var/www/html/CentOS7
第三步:從鏡像中找到相關的配置文件
cp -a /var/www/html/CentOS7/isolinux/* /var/lib/tftpboot/ mkdir -p /var/lib/tftpboot/pxelinux.cfg cp /var/www/html/CentOS7/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
六、安裝HTTP服務
做用1:提供自動應答文件下載
做用2:提供安裝系統所需的全部rpm包下載
[root@kickstart ~]# yum -y install httpd
[root@kickstart ~]# systemctl start httpd.service
檢查步驟
http://10.0.0.201/CentOS7/ curl http://172.16.1.201/CentOS7/
七、default配置文件
[root@kickstart tftpboot]# pwd /var/lib/tftpboot [root@kickstart tftpboot]# cd pxelinux.cfg/ [root@kickstart pxelinux.cfg]# vim default
八、不應出現的錯誤
報錯緣由:selinux沒關
http://blog.oldboyedu.com/autoinstall-kickstart/
append initrd=initrd.img method=http://172.16.1.201/CentOS7/
CentOS6安裝步驟補充
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
# epel出現一個狀況,把一個必須的包給清除了
yum localinstall Django14-1.4.21-1.el6.noarch.rpm
yum -y install cobbler cobbler-web dhcp tftp-server pykickstart httpd
CentOS7
echo "192.168.19.200 mirrors.aliyun.com" >>/etc/hosts
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum -y install cobbler cobbler-web dhcp tftp-server pykickstart httpd