zoukankan      html  css  js  c++  java
  • 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
     
     
     
     
     
     
     
     
     
     
     
     





  • 相关阅读:
    如何让nodejs使用多线程执行
    web input光标的颜色
    web视频自定义规划
    webgl 学习注意事项
    前端url创建,以及base64与url的转化
    微信 input 照相机 呼出
    js 资源下载方法
    在React项目中使用React-intl实现多语言支持,以及对react-init各组件的解读
    React Native 的组件定义及使用
    AMD模块&CommonJs模块&ES6模块
  • 原文地址:https://www.cnblogs.com/hello-sky/p/7687994.html
Copyright © 2011-2022 走看看