CentOS6.8 自动安装脚本详解


CentOS6.8 自动安装脚本详解

 
使用时请去掉中文注释
 
[root@CentOS6 ~] # vim /var/lib/cobbler/kickstarts/CentOS6.8.ks
auth - -useshadow --enablemd5
bootloader --location=mbr
clearpart --all --initlabel
unsupported_hardware
text
firewall --disabled
firstboot --disable
keyboard us
lang en_US
reboot
rootpw --iscrypted $default_password_crypted
selinux --disabled
skipx
timezone --utc Asia/Shanghai
#network  --bootproto=dhcp --device=eth0 --onboot=on
install
zerombr
#part swap --asprimary --fstype="swap" --size=2048
part /boot --fstype=ext4 --size=200
part pv.01 --size=1 --grow
volgroup rootvg pv.01
logvol / --fstype=ext4 --name=lv01 --vgname=rootvg --size=10240
logvol /data --fstype=ext4 --name=lv02 --vgname=rootvg --size=1 --grow
 
%packages
@base
vim
gcc
gcc-c++
make
cmake
openssl-devel
net-tools
ntp
%end
 
%post
#同步系统时间
/usr/sbin/ntpdate  202.120.2.101  >/dev/null 2>&1
hwclock --systohc
echo -e "0 0 1 * * root /usr/sbin/ntpdate  202.120.2.101  > /dev/null"    >> /etc/crontab
service crond restart
 
#关闭SSH域名解析
sed -i 's%#UseDNS yes%UseDNS no%' /etc/ssh/sshd_config
sed -i 's%GSSAPIAuthentication yes%GSSAPIAuthentication no%' /etc/ssh/sshd_config
 
#执行外部脚本 (自动设置Linux系统静态IP地址、DNS、网关、计算机名称
cd /root
sh /root/autoip6.sh
%end
 
 
创建外挂脚本(自动修改静态IP、网关、DNS)——CentOS6.x
[root@CentOS6 ~] # cd /var/www/cobbler/ks_mirror/config/
[root@CentOS6 config] # vim autoip6.sh
#!/bin/sh
ROUTE=$(route  -n |grep  "^0.0.0.0" |awk  '{print $2}' )
BROADCAST=$(/sbin/ifconfig eth0|grep  -i  bcast|awk  '{print $3}' |awk  -F ":"  '{print $2}' )
HWADDR=$(/sbin/ifconfig eth0|grep  -i  HWaddr|awk  '{print $5}' )
IPADDR=$(/sbin/ifconfig eth0|grep  "inet addr" |awk  '{print $2}' |awk  -F ":"  '{print $2}' )
NETMASK=$(/sbin/ifconfig eth0|grep  "inet addr" |awk  '{print $4}' |awk  -F ":"  '{print $2}' )
 
cat  >/etc/sysconfig/network -scripts /ifcfg-eth0<<EOF
DEVICE=eth0
BOOTPROTO=static
BROADCAST= $BROADCAST
HWADDR= $HWADDR
IPADDR= $IPADDR
NETMASK= $NETMASK
GATEWAY= $ROUTE
ONBOOT=yes
EOF
 
service network restart
 
 
创建外挂脚本(自动修改静态IP、网关、DNS)——CentOS7.x
[root@CentOS6 ~] # cd /var/www/cobbler/ks_mirror/config/
[root@CentOS6 config] # vim autoip7.sh
#!/bin/sh
DEVICE=$(ip addr | grep  '^[0-9]'  |grep  -v  "lo" |awk  -F ': '  '{print $2}' )
ROUTE=$(route  -n |grep  "^0.0.0.0" |awk  '{print $2}' )
BROADCAST=$(/sbin/ifconfig  $DEVICE |grep broadcast|awk  '{print $6}' )
HWADDR=$(/sbin/ifconfig  $DEVICE |grep ether|awk  '{print $2}' )
IPADDR=$(/sbin/ifconfig  $DEVICE |grep inet|grep  -v   "inet6" |awk  '{print $2}' )
NETMASK=$(/sbin/ifconfig  $DEVICE |grep netmask|awk  '{print $4}' )
 
cat  >/etc/sysconfig/network -scripts /ifcfg- $DEVICE <<EOF
NAME= $DEVICE
DEVICE= $DEVICE
ONBOOT=yes
NETBOOT=yes
BOOTPROTO=static
TYPE =Ethernet
BROADCAST= $BROADCAST
HWADDR= $HWADDR
IPADDR= $IPADDR
NETMASK= $NETMASK
GATEWAY= $ROUTE
DNS1=114.114.114.114
EOF
 
service network restart
 
 
 
创建外挂脚本(修改主机名)
[root@CentOS6 config] # vim hostname.sh
#!/bin/bash
IPADDR=$(/sbin/ifconfig eth0|grep  "inet addr"|awk '{print $2}'|awk -F":" '{print $2}')
ROUTE=$(route -n|grep "^0.0.0.0"|awk '{print $2}')
HOSTNAME=$1
if [ "$HOSTNAME" "" ]; then
    echo "HOSTNAME IS NULL";exit 1
fi
 
cat >/etc/sysconfig/network<<EOF
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=${HOSTNAME}
GATEWAY=$ROUTE
EOF
echo "$IPADDR  $HOSTNAME" >> /etc/hosts
hostname $HOSTNAME
bash
echo "nameserver  114.114.114.114"  > /etc/resolv.conf
echo "nameserver  101.226.4.6" >> /etc/resolv.conf
 
 
 
 
 
 
 
 
 
 
 
 






免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM