您的位置:首页 > 理论基础 > 计算机网络

Kickstart+HTTP+DHCP+TFTP全自动批量安装部署Linux系统

2015-09-15 15:27 645 查看
第一部分:在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/images/pxeboot/vmlinuz /var/lib/tftpboot
[root@Kickstart ~]# cp /var/www/html/CentOS-6.5/images/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

第二部分:测试安装全新的服务器

















至此Linux系统批量安装已经实现,不足之处,请指出;相互学习,共同进步!
小提示:如果VMware环境下使用Kickstart安装的安装的话,需要关闭VMware的dhcp服务,不然安装新系统的时候会提示错误。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息