Linux 环境初始化过程
Linux 环境初始化
历史记录设置
echo 'export HISTTIMEFORMAT="%F %T whoami
"' >> /etc/profile
sed -i "s/HISTSIZE=1000/HISTSIZE=999999999/" /etc/profile
最大openfile数
echo -e "\tsoft\tnofile\t65536" >> /etc/security/limits.conf
echo -e "\thard\tnofile\t65536" >> /etc/security/limits.conf
echo -e "\tsoft\tnofile\t65536" >> /etc/security/limits.d/20-nproc.conf
echo -e "\thard\tnofile\t65536" >> /etc/security/limits.d/20-nproc.conf
优化内核参数
echo "#-------------insert-------------" >> /etc/sysctl.conf
echo "net.core.netdev_max_backlog = 32768" >> /etc/sysctl.conf
echo "net.core.rmem_default = 8388608" >> /etc/sysctl.conf
echo "net.core.rmem_max = 16777216" >> /etc/sysctl.conf
echo "net.core.somaxconn = 32768" >> /etc/sysctl.conf
echo "net.core.wmem_default = 8388608" >> /etc/sysctl.conf
echo "net.core.wmem_max = 16777216" >> /etc/sysctl.conf
echo "net.ipv4.ip_local_port_range = 5000 65000" >> /etc/sysctl.conf
echo "net.ipv4.tcp_fin_timeout = 30" >> /etc/sysctl.conf
echo "net.ipv4.tcp_keepalive_time = 300" >> /etc/sysctl.conf
echo "net.ipv4.tcp_max_orphans = 3276800" >> /etc/sysctl.conf
echo "net.ipv4.tcp_max_syn_backlog = 65536" >> /etc/sysctl.conf
echo "net.ipv4.tcp_max_tw_buckets = 5000" >> /etc/sysctl.conf
echo "net.ipv4.tcp_mem = 94500000 915000000 927000000" >> /etc/sysctl.conf
echo "net.ipv4.tcp_syn_retries = 2" >> /etc/sysctl.conf
echo "net.ipv4.tcp_synack_retries = 2" >> /etc/sysctl.conf
echo "net.ipv4.tcp_syncookies = 1" >> /etc/sysctl.conf
echo "net.ipv4.tcp_timestamps = 0" >> /etc/sysctl.conf
echo "net.ipv4.tcp_tw_recycle = 1" >> /etc/sysctl.conf
echo "net.ipv4.tcp_tw_reuse = 1" >> /etc/sysctl.conf
网络优化
echo -e "#关闭ipv6" >> /etc/sysctl.conf
echo -e "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf
echo -e "net.ipv6.conf.default.disable_ipv6 = 1" >> /etc/sysctl.conf
echo -e "# 避免放大攻击" >> /etc/sysctl.conf
echo -e "net.ipv4.icmp_echo_ignore_broadcasts = 1" >> /etc/sysctl.conf
echo -e "# 开启恶意icmp错误消息保护" >> /etc/sysctl.conf
echo -e "net.ipv4.icmp_ignore_bogus_error_responses = 1" >> /etc/sysctl.conf
echo -e "#开启路由转发" >> /etc/sysctl.conf
echo -e "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
生效配置
sysctl -p
安装所需软件
yum install wget lrzsz rsync vim sysstat ntpdate -y
安装系统软件更新(包含漏洞更新)
yum update -y
docker-ce 安装 (centos,基于centos 修改的系统都可使用)
1.安装 管理repository及扩展包的工具
yum install -y yum-utils
2.添加docker-ce yum 仓库
wget -O /etc/yum.repos.d/docker-ce.repo https://repo.huaweicloud.com/docker-ce/linux/centos/docker-ce.repo
sudo sed -i 's+download.docker.com+repo.huaweicloud.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
3.基于centos 修改的系统需要修改 docker-ce.repo 中 $releasever,修改为 7
sudo sed -i 's+$releasever+7' /etc/yum.repos.d/docker-ce.repo
4.更新索引文件并安装
sudo yum makecache fast
sudo yum install docker-ce
5.配置国内docker镜像源
(1)创建文件夹
mkdir -p /etc/docker
(2)编辑/etc/docker/daemon.json文件,并输入国内镜像源地址
vi /etc/docker/daemon.json
(3)Docker 网易163镜像加速
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
(4)重新加载配置文件,重启docker服务
systemctl daemon-reload
systemctl restart docker
6.配置docker目录
编辑/etc/docker/daemon.json文件
vim /etc/docker/daemon.json、
添加以下参数(注意逗号)
"data-root": "文件路径"
完整的json文件(如下)
{
"registry-mirrors": ["http://hub-mirror.c.163.com"],
"data-root": "/data/docker"
}
7.重新加载配置文件,重启docker服务
systemctl daemon-reload
systemctl restart docker
8.验证
docker run hello-world
