安裝centos 7.9 系統


安裝centos系統

1. 安裝centos系統

  • 我們開始安裝centos7系統

    • 第一步,配置centos7,選擇安裝
      image

      使用上下鍵選擇了,install Centos7后按tab鍵輸入,net.ifnames=0 biosdevname=0

    • 選擇語言和鍵盤格式
      image

      選擇默認就行

    • 手動配置一下磁盤
      image
      image

      選擇 I will configure partitioning進行配置
      image

      點擊 click here to create them automatically進行配置

    • 配置磁盤
      image

      這里根據情況配置,swap根據一般為內存的2倍,/boot一般默認1024mib就行,剩下的都給根級目錄 "/"
      image
      image

      點擊 Begin installation進行安裝

    • 設置root密碼
      image
      image

      由於這里演示怎么安裝,這里密碼設置為123456,可以根據自己情況進行安裝,確認密碼后返回安裝界面

    • 安裝界面
      image
      image

      點擊重啟,就到此安裝完成

  • 創建系統初始化test.sh腳本

    [root@master ~]# vim system_Initialize.sh 
    [root@master ~]# cat system_Initialize.sh 
    #!/bin/sh
    #author:shichao
    #date:2018/08/02
    #mail:shichao@scajy.cn
    
    [ -f /etc/init.d/functions ] && . /etc/init.d/functions  ||exit
    
    function Basics(){
    
     #安裝epel,源
    echo "epel源安裝中,請稍等......"
    yum install epel-release -y > /dev/null 2>&1 
    echo "epel源安裝完成!"
    
    echo "gcc-c++,gcc,make等工具安裝中,請稍等......"
    yum -y install gcc gcc-c++ gd cmake patch  automakemake autoconf libjpeg net-tools libjpeg-devel libpng libpng-devel freetype freetype-devellibxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-develkrb5 krb5-devel libidn libtools-libs libidn-devel openssl openssl-developenldap openldap-devel nss_ldap openldap-clients openldap-servers pcre-devel libmcrypt-devel readline-devellibcap-devel ntpdate vim tree wget  > /dev/null 2>&1 
    if [ $? -eq 0 ] ; then
        echo "gcc-c++,gcc,make等工具安裝完成!"
    fi
    
    #系統基本設置,包括時間同步設置,firewalld,root禁止登陸等
    #系統時間及時區設置
    
    
    /usr/bin/timedatectl set-timezone  Asia/Shanghai  
    echo "正在同步網絡時間......"
    /usr/sbin/ntpdate cn.pool.ntp.org > /dev/null 2>&1 && echo "網絡時間同步完成!" || echo "網絡時間同步失敗"
    /sbin/hwclock --systohc  
    
    
    #設置為每天同步網絡時間
    if [ ! -f /var/spool/cron/root ]
      then
        touch /var/spool/cron/root 
    fi
    is_ntpdate=$(grep "ntpdate" /var/spool/cron/root |wc -l)
    if [ $is_ntpdate -eq 0 ] ; then
    cat >> /var/spool/cron/root <<EOF 
    59  23 * * * /usr/sbin/ntpdate cn.pool.ntp.org > /dev/null
    EOF
    fi
    
    #禁用selinux和firewalld
    /usr/bin/sed -i 's/^SELINUX=.*$/SELINUX=disabled/' /etc/selinux/config > /dev/null 2>&1  && echo "已禁用系統selinux"
    /usr/bin/systemctl  stop firewalld  > /dev/null 2>&1
    /usr/bin/systemctl disable firewalld >  /dev/null 2>&1
    setenforce 0 
    
    
    #系統升級
    echo "系統正在升級中......該過程可能需要十幾分鍾或更久,請稍等!"
    yum update -y > /dev/null 2>&1
    if [ $? -eq 0 ] ; then
        echo "系統升級成功"
    fi
    
    #系統參數優化
    echo "正在優化系統參數......"
    sed -i '5,$d' /etc/security/limits.d/20-nproc.conf
    cat >> /etc/security/limits.d/20-nproc.conf <<EOF 
    *          soft    nproc     655350
    *          soft    nofile    655350
    *          hard    nofile    655350
    *          hard    nproc     655350
    root       soft    nproc     unlimited
    EOF
    echo 10240 >  /proc/sys/net/core/somaxconn
    
    echo never > /sys/kernel/mm/transparent_hugepage/enabled  &&  echo never > /sys/kernel/mm/transparent_hugepage/defrag
    
    sysctl vm.overcommit_memory=1 > /dev/null 2>&1 
    
    sed -i '10,$d' /etc/sysctl.conf
    cat >> /etc/sysctl.conf <<EOF 
    vm.overcommit_memory = 1
    net.ipv4.tcp_syncookies = 0
    net.ipv4.ip_local_port_range = 1024 65535
    net.core.rmem_max=16777216
    net.core.wmem_max=16777216
    net.ipv4.tcp_rmem=4096 87380 16777216
    net.ipv4.tcp_wmem=4096 65536 16777216
    net.ipv4.tcp_fin_timeout = 10
    net.ipv4.tcp_tw_recycle = 1
    net.ipv4.tcp_tw_reuse = 1
    net.ipv4.tcp_timestamps = 0
    net.ipv4.tcp_window_scaling = 0
    net.ipv4.tcp_sack = 0
    net.core.netdev_max_backlog = 30000
    net.ipv4.tcp_no_metrics_save=1
    net.core.somaxconn = 65535
    net.ipv4.tcp_max_orphans = 262144
    net.ipv4.tcp_max_syn_backlog = 262144
    net.ipv4.tcp_synack_retries = 2
    net.ipv4.tcp_syn_retries = 2
    net.ipv4.tcp_retries2 = 5
    net.ipv4.tcp_keepalive_time = 40
    net.ipv4.tcp_keepalive_probes = 3
    net.ipv4.tcp_keepalive_intvl = 10
    EOF
    echo "系統參數已經優化!"
    
    
    #配置開機啟動項
    echo '' > /etc/init.d/optimizing
    cat >> /etc/init.d/optimizing <<EOF 
    #!/bin/bash
    ### BEGIN INIT INFO
    # Provides:          optimizing
    # Required-Start:    \$local_fs
    # Required-Stop:
    # X-Start-Before:    redis mongod mongodb-mms-automation-agent
    # Default-Start:     2 3 4 5
    # Default-Stop:      0 1 6
    # Short-Description: Optimizing script
    # Description:       Optimizing script.
    ### END INIT INFO
    
    case \$1 in
      start)
        # transparent hugepage
        thp_path=/sys/kernel/mm/transparent_hugepage
        echo 'never' > \${thp_path}/enabled
        echo 'never' > \${thp_path}/defrag
    
        # somaxconn
        echo '10240' > /proc/sys/net/core/somaxconn  
        ulimit -f unlimited
        ulimit -t unlimited
        ulimit -v unlimited
        ulimit -n 655350
        ulimit -m unlimited
        ulimit -c unlimited
        ulimit -u 655350
        unset thp_path
        ;;
    esac
    EOF
    if [ $? -eq 0 ] ;then 
       chmod 755 /etc/init.d/optimizing 
       chkconfig optimizing on 
    fi
    
    
    
    
    
    if [ ! -d  /app ]
      then
        mkdir -p /app
        mkdir -p /app/backup
        mkdir -p /app/data
        mkdir -p /app/logs
        mkdir -p /app/opt
        mkdir -p /app/scripts                                                                                                                          
        mkdir -p /app/tools                                                                                                                            
        mkdir -p /app/www                                                                                                                              
      else                                                                                                                                             
        mkdir -p /app/backup                                                                                                                           
        mkdir -p /app/data                                                                                                                             
        mkdir -p /app/logs                                                                                                                             
        mkdir -p /app/opt                                                                                                                              
        mkdir -p /app/scripts                                                                                                                          
        mkdir -p /app/tools                                                                                                                            
        mkdir -p /app/www                                                                                                                              
    fi
    }
    
    
    while : 
    do
        
        cat <<EOF
            +---------------------------------------------------------------+
            |                                                               |
            |         This  is  a LNMP                                      |
            |                                                               |
            |         1.必須先執行 '1' 安裝linux環境基礎                    |
            |         2.退出安裝程序                                        |
            +---------------------------------------------------------------+
    EOF
        read -p "請你輸入一個數字:" num
        case "$num" in
            1)
                Basics
            ;;       
            2)
               exit 
            ;;
            *)
            echo '輸入錯誤,已重新加載....'
            ;;
        esac
    
    done
    
    
  • 執行系統初始化腳本

    [root@master ~]# sh system_Initialize.sh
            +---------------------------------------------------------------+
            |                                                               |
            |         This  is  a LNMP                                      |
            |                                                               |
            |         1.必須先執行 '1' 安裝linux環境基礎                    |
            |         2.退出安裝程序                                        |
            +---------------------------------------------------------------+
    請你輸入一個數字:1
    epel源安裝中,請稍等......
    epel源安裝完成!
    gcc-c++,gcc,make等工具安裝中,請稍等......
    gcc-c++,gcc,make等工具安裝完成!
    正在同步網絡時間......
    網絡時間同步失敗
    已禁用系統selinux
    系統正在升級中......該過程可能需要十幾分鍾或更久,請稍等!
    系統升級成功
    正在優化系統參數......
    系統參數已經優化!
            +---------------------------------------------------------------+
            |                                                               |
            |         This  is  a LNMP                                      |
            |                                                               |
            |         1.必須先執行 '1' 安裝linux環境基礎                    |
            |         2.退出安裝程序                                        |
            +---------------------------------------------------------------+
    請你輸入一個數字:2
    


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM