安装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
    
posted @ 2022-02-24 10:02  七月流星雨  阅读(3597)  评论(0编辑  收藏  举报