Linux-Centos系统初始化

系统初始化

最小化安装原则节省系统资源

1.yum源处理与常用软件包安装

# 安装阿里云的yum源
rm -rf /etc/yum.repos.d/*
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
dnf -y install epel-release
dnf clean all
dnf makecache  

# 安装华为云的yum源
rm -rf /etc/yum.repos.d/*
wget -O /etc/yum.repos.d/CentOS-Base.repo https://repo.huaweicloud.com/repository/conf/CentOS-8-reg.repo
dnf -y install epel-release
dnf clean all
dnf makecache

# 安装常用软件包
dnf install vim wget lrzsz gcc gcc-c++ rsync tree telnet nfs-utils net-tools lsof bash-completion nmap -y

# 软件包解释
vim:       文本编辑工具
wget:      下载工具
lrzsz:      文件上传下载工具
gcc:       编译工具
gcc-c++:   编译工具
rsync:     文件传输工具
tree:      查看目录树
telnet:    测试网络连接
nfs-utils:  文件共享服务
net-tools: ifconfig命令软件包
lsof:      用来显示系统打开的文件
bash-completion: 命令补全工具
nmap:      网络探测和安全扫描程序

2.规范系统主机名

hostnamectl set-hostname web_server

3.关闭selinux

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

4.关闭防火墙

# 临时关闭
systemctl stop firewalld

# 设置开机不启动
systemctl disable firewalld

5.同步系统时间

#安装ntpdate
rpm -ivh http://mirrors.wlnmp.com/centos/wlnmp-release-centos.noarch.rpm
dnf  install wntp -y

#给定时任务加上注释
echo '#Timing synchronization time' >>/var/spool/cron/root

#设置定时任务
echo '0 */1 * * * /usr/sbin/ntpdate ntp1.aliyun.com &>/dev/null' >>/var/spool/cron/root

#检查结果
crontab -l

6.配置网络

# vi /etc/sysconfig/network-scripts/ifcfg-eth0 
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
NAME=eth0
DEVICE=eth0
ONBOOT=yes
IPADDR=10.0.0.101
NETMASK=255.255.255.0
GATEWAY=10.0.0.254
DNS1=8.8.8.8
DNS2=114.114.114.114

7.ssh密钥免密登录

# 生成私钥和公钥
ssh-keygen 

# 把自己的公钥推送给对方
ssh-copy-id -i root@10.0.0.8

# 免密登入连接成功
ssh root@10.0.0.8

8.系统初始化脚本

[root@steven scripts]# cat system_init.sh 
#!/bin/bash
# Author : xuZhongXiang

# 常用变量
hostname=docker
fhq=firewalld
os_rel=$(uname -a | awk '{print $1,$2}')
Yum_Path=/etc/yum.repos.d
Soft="vim wget
      lrzsz gcc
      gcc-c++ rsync
      tree telnet
      nfs-utils net-tools
      lsof bash-completion
      nmap wntp"


# 更新系统
dnf update -y &>/dev/null

# 更新yum源
bak_yum(){
    if [ -d ${Yum_Path}/repo.bak ];then
        rm -rf ${Yum_Path}/repo.bak/*
    else
        mkdir ${Yum_Path}/repo.bak
        mv ${Yum_Path}/*.repo ${Yum_Path}/repo.bak
    fi
    }
bak_yum

install_YUM(){
    curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo &>/dev/null
    rpm -ivh http://mirrors.wlnmp.com/centos/wlnmp-release-centos.noarch.rpm &>/dev/null
    wget -O /etc/yum.repos.d/docker-ce.repo https://repo.huaweicloud.com/docker-ce/linux/centos/docker-ce.repo &>/dev/null
    dnf -y install epel-release &>/dev/null
    dnf clean all &>/dev/null
    dnf makecache &>/dev/null
    dnf repolist &>/dev/null && echo "${os_rel} yum源配置成功!"
    }
install_YUM 


# 安装docker
install_docker(){
    dnf remove docker docker-common docker-selinux docker-engine -y &>/dev/null
    dnf install -y yum-utils device-mapper-persistent-data lvm2 &>/dev/null
    dnf install docker-ce -y &>/dev/null && echo "docker安装成功"
    }
    install_docker


# 启动docker
systemctl daemon-reload && systemctl restart docker && systemctl enable --now docker && docker info


# 安装常用软件包
dnf install -y $Soft &>/dev/null && echo "常用软件包安装成功......"


# 设置主机名
hostnamectl set-hostname $hostname && echo "当前主机名为: ${hostname}"
												         
# 关闭防火墙
systemctl stop ${fhq} && systemctl disable ${fhq} && echo "${fhq} 防火墙已关闭"

# 关闭selinux
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
echo "selinux 当前状态为: $(getenforce)"


# 同步系统时间
sync_time(){
echo '#Timing synchronization time' > /var/spool/cron/root
echo '0 */1 * * * /usr/local/bin/ntpdate ntp1.aliyun.com &>/dev/null' >>/var/spool/cron/root
echo "同步系统时间成功"
    }
    sync_time
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值