新购ECS的时候都需要对环境进行初始化,如创建普通用户、更改主机名,格式化并挂载数据盘,内核小优化,进程数,打开的文件数,关闭selinux等。如果每次都手动执行命令,一来特别烦琐,二来浪费时间,所以在下面提供环境初始化脚本。因为如今大部分环境都是centos7了,所以只提供centos7环境的。脚本比较简单粗略。
!/bin/bash
This script be used to initialize aliyun centos7 environment
Please input one parameter.
创建普通用户和密码,为自定义密码
name=user1
pass=
useradd -d /home/$name
echo $pass | sudo passwd $name --stdin &>/dev/null
更新主机名,$1为脚本参数。
host_name=$1
hostnamectl set-hostname $host_name
修改内核,快速释放timeout连接
sed -i '$a net.ipv4.tcp_tw_reuse = 1' /etc/sysctl.conf
sed -i '$a net.ipv4.tcp_tw_recycle = 1' /etc/sysctl.conf
sed -i '$a net.ipv4.tcp_fin_timeout = 30' /etc/sysctl.conf
/sbin/sysctl -p
新建disk1文件夹,disk1可改成其它名字
disk=disk1
mkdir /$disk
格式化并挂载数据盘,此处只挂载一块磁盘
fdisk /dev/vdb <n
p
1
wq
EOF
mkfs.ext3 /dev/vdb1
mount -a
chown $name.$name /$disk -R
添加开机自动挂载
sed -i '$a /dev/vdb1 /$disk ext3 defaults 0 0' /etc/fstab
修改用户进程数,60000根据实际情况可改成其它值
sed -i 's/^ soft nproc.$/* soft nproc 60000/' /etc/security/limits.d/20-nproc.conf
sed -i '$a * soft nproc 60000' /etc/security/limits.conf
sed -i '$a * hard nproc 60000' /etc/security/limits.conf
修改用户打开文件数,60000根据实际情况可改成其它值
sed -i '$a * soft nofile 60000' /etc/security/limits.conf
sed -i '$a * hard nofile 60000' /etc/security/limits.conf
ulimit -SHn 60000
关闭selinux,如不需要关闭则忽略下面两行命令
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
setenforce 0
重启服务器
reboot