centos 6/7 系统初始化脚本

#!/bin/bash

初始化系统脚本

适用centos6 和centos7

#

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
cur_dir=$(pwd)
gcc_version=rpm -qa gcc | awk -F ‘[-]‘ ‘{print $2}‘

VERSION=cat /etc/issue | grep ‘6.‘
if [ "$VERSION" == "" ];then
VERSION=‘centos7‘
else
VERSION=‘centos6‘
fi

#更改为163的源
yum install wget -y
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
if [ $VERSION == ‘centos7‘ ];then
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
mv CentOS7-Base-163.repo /etc/yum.repos.d/CentOS-Base.repo
else
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
mv CentOS6-Base-163.repo /etc/yum.repos.d/CentOS-Base.repo
fi
yum clean all
yum makecache

#更改ulimit参数
if [ "cat /etc/security/limits.conf | grep ‘soft nproc 65535‘" = "" ]; then
cat >> /etc/security/limits.conf << EOF

  • soft nproc 65535
  • hard nproc 65535
  • soft nofile 65535
  • hard nofile 65535
    EOF
    echo "ulimit -SHn 65535" >> /etc/profile
    echo "ulimit -SHn 65535" >> /etc/rc.local
    fi

#安装必要工具
yum update -y
yum install -y vim wget ntpdate sysstat wget man mtr lsof iotop net-tools openssl-devel openssl-perl iostat subversion nscd

#关闭selinux
sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/g‘ /etc/selinux/config
setenforce 0

#设置ssh
sed -i "s/#UseDNS yes/UseDNS no/g" /etc/ssh/sshd_config
sed -i "s/GSSAPIAuthentication yes/GSSAPIAuthentication no/g" /etc/ssh/sshd_config

#设置时区
if [ "cat /etc/crontab | grep ntpdate" = "" ]; then
echo "0 23 * root /usr/sbin/ntpdate cn.pool.ntp.org >> /var/log/ntpdate.log" >> /etc/crontab
fi
rm -f /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ntpdate cn.pool.ntp.org;hwclock -w

#设置sysctl
SYSCONF="
#Add
net.ipv4.tcp_max_syn_backlog = 65536
net.core.netdev_max_backlog = 32768
net.core.somaxconn = 32768

net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 2

net.ipv4.tcp_tw_recycle = 1
#net.ipv4.tcp_tw_len = 1
net.ipv4.tcp_tw_reuse = 1

net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_max_orphans = 3276800

net.ipv4.tcp_fin_timeout = 120
net.ipv4.tcp_keepalive_time = 120
net.ipv4.ip_local_port_range = 1024 65535

net.nf_conntrack_max = 16404388
net.netfilter.nf_conntrack_tcp_timeout_established = 10800

#kernel: TCP: time wait bucket table overflow
net.ipv4.tcp_max_tw_buckets = 30000

fs.file-max=655350"

#"安装系统工具"
yum install -y gcc gcc-c++ make cmake autoconf bzip2 bzip2-devel curl openssl openssl-devel rsync gd zip perl unzip

#重启服务
#ssh
if [ "$VERSION" == "centos6" ]; then
service sshd restart
service iptables stop
chkconfig iptables off
if [ "cat /etc/sysctl.conf | grep net.ipv4.tcp_max_tw_buckets" = "" ]; then
echo "$SYSCONF" >> /etc/sysctl.conf
fi
/sbin/sysctl -p
else
systemctl restart sshd
systemclt disable postfix.service
systemctl stop postfix.service
systemctl stop firewalld
systemctl mask firewalld
yum install iptables-services -y
if [ ! -f ‘/etc/sysctl.d/addsys.conf‘ ];then
echo "$SYSCONF" >> /etc/sysctl.d/addsys.conf
fi
/sbin/sysctl -p
fi

原文地址:http://blog.51cto.com/guoshaoliang789/2121457

时间: 2024-10-28 20:51:12

centos 6/7 系统初始化脚本的相关文章

linux系统监控工具汇总及几个小脚本 , 系统初始化脚本

重要性能监测工具:top.vmstat.w.uptime.ps.free.iostat.netstat./proc等 需要监视Linux服务器的性能?大多数Linux发行版都集成了一些监视工具.这些工具可以获取有关系统活动的信息的详细指标.通过这些工具,你可以发现产生系统性能问题可能存在原因.下面讨论的是一些最基本的命令,它涉及到系统分析和调试服务器等一些问题,如:1.    找出系统瓶颈问题.2.    磁盘 (储存) 瓶颈问题.3.    CPU和内存瓶颈问题.4.    网络瓶颈问题.#

centos7 系统初始化脚本

现在自己的本地虚拟机系统,直接安装的是centos7.2 mini版,安装完成发现好多东西都没有安装,所以写了一个简单的系统初始化脚本,让自己可以省一些力气,哈哈 人懒主要是. 下面贴出写的脚本,脚本里面有好多地方写的不是特别完善,希望大家给出意见,让我来完善它. #!/bin/bash function readme(){echo ==========编写一个关于centos7 最小化系统安装后 需要设置的东西 ==========echo ==========1.默认执行dhclient,获

centos系统初始化脚本

#!/bin/bash # qcloud system init scripts # by gaolongquan  # 加点颜色 [ -z "`cat ~/.bashrc | grep ^PS1`" ] && echo 'PS1="\[\e[37;40m\][\[\e[32;40m\]\u\[\e[37;40m\]@\h \[\e[35;40m\]\W\[\e[0m\]]\\$ "' >> ~/.bashrc # 校对时间 # 腾讯云已

一键linux系统初始化脚本

一.前言一般我们在安装新的系统时,系统的一些默认配置对我们来说是不行的,所以我们要自定义初始化系统. 二.需求1)设置时区并把同步时间加入计划任务2)禁用selinux3)清空原防火墙默认策略只保留ssh4)历史命令显示操作时间级用户5)创建ALL权限用户并禁止root远程登录6)禁止定时任务发送邮件7)设置最大打开文件数8)减少swap使用9)系统内核参数优化10)安装系统性能分析工具及其他常常用工具注意:安装新系统最好最小化安装. 三.脚本正文#!/bin/bash #设置时区并同步时间ln

CentOS6系统初始化脚本

#!/bin/bash ### Usage: This script use to config linux system #获取IP地址 172.16.100.100 outip=`ifconfig eth1 |grep inet|cut -f 2 -d ":" |cut -f 1 -d " "|awk -F "." '{print $4}'` #定义系统主机名 hostname=dbbak$outip.mstuc.cn1 #修改yum源  #

系统初始化脚本—安装zabbix_agentd

$ more /opt/auth.sh #!/bin/bash # 远程执行脚本 for IP in `cat /opt/IP.txt`;do     sshpass -p '密码' ssh [email protected]$IP "sh /root/init.sh" done 注:sshpass命令需要手动安装 $ yum install sshpass -y $ more init.sh  #!/bin/bash #********************************

系统初始化脚本

####close service TimeServerMaster="192.168.6.13" SSHPort="58522" echored () { echo -ne "\033[31m" $1 "\033[0m\n" } echogreen () { echo -ne "\033[32m" $1 "\033[0m\n" } IPN=`ifconfig |grep 192.168

LINUX 系统初始化脚本

#!/bin/bash ######the system first start configuretion #####for install ####copy right by donglei############## #1.配置sysctl mv /etc/sysctl.conf  /etc/sysctl.bak echo "############################the new config for sysctl ########### net.ipv4.ip_forwa

CentOS7系统初始化脚本

[[email protected] ~]# cat optimize.sh #!/bin/bash # Optimize the system after installation PASSWD=reid NETIP=192.168.56.11 PROTOBOOT=static HOSTNAME=linux-node1.example.com DNS1=192.168.56.2 NTPSERVER=ntp1.aliyun.com YUMREPO=http://mirrors.aliyun.co