Kickstart+HTTP+DHCP+TFTP全自動批量安裝部署Linux系統

 

第一部分:在Kickstart服務器系統操作

1.關閉SELINUX

[root@Kickstart ~]# sed -i 's@SELINUX=enforcing@SELINUX=disabled@' /etc/selinux/config 
[root@Kickstart ~]# setenforce 0

2.開啓TCP:80端口,UDP:69端口

[root@Kickstart ~]# iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT  

[root@Kickstart ~]# iptables -A INPUT -m state --state NEW -m udp -p udp --dport 69 -j ACCEPT         

[root@Kickstart ~]# /etc/init.d/iptables save

3.安裝http服務

[root@Kickstart ~]# yum install -y httpd

4.掛在系統鏡像文件

[root@Kickstart ~]# mount -o loop /soft/CentOS-6.5-x86_64-minimal.iso  /mnt/

5.將鏡像文件拷貝到站點目錄

[root@Kickstart ~]# mkdir /var/www/html/CentOS-6.5
[root@Kickstart ~]# cp -r /mnt/* /var/www/html/CentOS-6.5

6.安裝配置tftp服務

[root@Kickstart ~]# yum install tftp tftp-server
[root@Kickstart ~]# sed -i 's@yes@no@g' /etc/xinetd.d/tftp
[root@Kickstart ~]# mkdir -p /var/lib/tftpboot
[root@Kickstart ~]# cp /var/www/html/CentOS-6.5/p_w_picpaths/pxeboot/vmlinuz /var/lib/tftpboot  
[root@Kickstart ~]# cp /var/www/html/CentOS-6.5/p_w_picpaths/pxeboot/initrd.img /var/lib/tftpboot  
[root@Kickstart ~]# mkdir -p /var/lib/tftpboot/pxelinux.cfg
[root@Kickstart ~]# cp /var/www/html/CentOS-6.5/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
[root@Kickstart ~]# vim /var/lib/tftpboot/pxelinux.cfg/default
default CentOS-6.5
prompt 0
timeout 600
display boot.msg
F1 boot.msg
F2 options.msg
F3 general.msg
F4 param.msg
F5 rescue.msg
label CentOS-6.5
kernel vmlinuz
append initrd=initrd.img ks=http://192.168.64.129/CentOS-6.5.cfg ksdevice=eth0 ip=dhcp
label CentOS-7.0
kernel vmlinuz
append initrd=initrd.img ks=http://192.168.64.129/CentOS-7.0.cfg ksdevice=eth0 ip=dhcp
label local
localboot 1
label memtest86
kernel memtest
append -
[root@Kickstart ~]# chmod 644 /var/lib/tftpboot/pxelinux.cfg/default

7.安裝配置引導程序

[root@Kickstart ~]# yum install syslinux -y
[root@Kickstart ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

8.安裝配置DHCP服務

[root@Kickstart ~]# yum install dhcp -y 
[root@Kickstart ~]# cp /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
[root@Kickstart ~]# vim /etc/dhcp/dhcpd.conf
ddns-update-style interim; #設置DHCP服務器模式
ignore client-updates; #禁止客戶端更新
subnet 192.168.64.0 netmask 255.255.255.0 { #設置網段
    option routers 192.168.64.2; #設置網關
    option subnet-mask 255.255.255.0; #設置子網掩碼
    option domain-name-servers 8.8.8.8,8.8.4.4; #設置dns服務器地址
    range dynamic-bootp 192.168.64.110 192.168.64.249; #設置dhcp服務器IP地址租用的範圍
    default-lease-time 64600; #默認租約時間
    max-lease-time 43200; #最大租約時間
    next-server 192.168.64.128; #tftp服務器地址
    filename "pxelinux.0"; #tftp服務器根目錄下面的文件名
}
[root@Kickstart ~]# sed -i 's@DHCPDARGS=@DHCPDARGS=eth0@' /etc/sysconfig/dhcpd

9.安裝配置kickstart服務 [最小化安裝,可以根據時間情況,進行安裝優化]

[root@Kickstart ~]# yum install system-config-kickstart -y
[root@Kickstart ~]# vim /var/www/html/CentOS-6.5.cfg
#Kickstart file automatically generated by anaconda.
install
url --url=http://192.168.64.129/CentOS-6.5/
lang en_US.UTF-8
zerombr yes
key --skip
keyboard us
network --device eth0 --bootproto dhcp --onboot on
#default password RooT2015
rootpw --iscrypted $1$QqobZZ1g$rYnrawi9kYlEeUuq1vcRS/
firewall --enabled --port=9527:tcp
authconfig --enableshadow --enablemd5
selinux --disabled
timezone Asia/Shanghai
bootloader --location=mbr --driveorder=sda
clearpart --all --initlabel
#Custom disk partitioning
part /boot --bytes-per-inode=4096 --fstype="ext4" --size=300
part swap --bytes-per-inode=4096 --fstype="swap" --size=1024
part / --bytes-per-inode=4096 --fstype="ext4" --grow --size=1
reboot
#minimize installation
%packages --nobase
%post

10.啓動http、tftp、dhcpd服務

[root@Kickstart ~]# /etc/init.d/httpd start
[root@Kickstart ~]# /etc/init.d/xinetd start
[root@Kickstart ~]# /etc/init.d/dhcpd start

11.檢查是否正常啓動

[root@Kickstart ~]# lsof -i:80
COMMAND  PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
httpd   1872   root    4u  IPv6  10649      0t0  TCP *:http (LISTEN)
httpd   1874 apache    4u  IPv6  10649      0t0  TCP *:http (LISTEN)
httpd   1875 apache    4u  IPv6  10649      0t0  TCP *:http (LISTEN)
httpd   1876 apache    4u  IPv6  10649      0t0  TCP *:http (LISTEN)
httpd   1877 apache    4u  IPv6  10649      0t0  TCP *:http (LISTEN)
httpd   1878 apache    4u  IPv6  10649      0t0  TCP *:http (LISTEN)
httpd   1879 apache    4u  IPv6  10649      0t0  TCP *:http (LISTEN)
httpd   1880 apache    4u  IPv6  10649      0t0  TCP *:http (LISTEN)
httpd   1881 apache    4u  IPv6  10649      0t0  TCP *:http (LISTEN)
[root@Kickstart ~]# lsof -i:67
COMMAND  PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
dhcpd   1850 dhcpd    7u  IPv4  10523      0t0  UDP *:bootps 
[root@Kickstart ~]# lsof -i:69 
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
xinetd  1904 root    5u  IPv4  10711      0t0  UDP *:tftp

 

 第二部分:測試安裝全新的服務器

 

wKiom1X3xc6wzcNcAAKQx1xHbpo821.jpg

wKioL1X3yAPwu0KSAAEY6N4YOEU605.jpg

wKiom1X3xdCzt7rDAAJP62KE1nw875.jpg

 

wKioL1X3yTTRfsLRAACvxX0ar6k198.jpg

wKiom1X3xwGD5TYRAAJiNoiKHK0110.jpg

至此Linux系統批量安裝已經實現,不足之處,請指出;相互學習,共同進步!

小提示:如果VMware環境下使用Kickstart安裝的安裝的話,需要關閉VMware的dhcp服務,不然安裝新系統的時候會提示錯誤。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章