模板机初始化
基本网络设置
修改 计算机名
修改IP地址
修改 Host 文件
基础系统设置
配置 YUM 源
更新系统
安装常用依赖组件
安装 虚拟化 增强 插件
选择 1:安装 Open VM Tools
选择 2:安装 VMWare Tools
系统常用依赖组件
安装 桌面 GUI 环境
同步 网络时间
修改字体主题
修改资源限制配置文件
系统安全设置
关闭 防火墙
关闭 SELinux
系统用户设置
添加 系统用户
赋予 用户 管理员权限
创建 初始化 文件目录
# 删除 主机 SSH 密钥
rm -rf /etc/ssh/ssh_host_*
# 重置 主机 计算机名
echo "CentOS-Base" > /etc/hostname
# 删除网卡的 UUID 信息
sed -i /UUID=/d /etc/sysconfig/network-scripts/ifcfg-ens32
# 删除网卡的 HWADDR 信息
sed -i /HWADDR=/d /etc/sysconfig/network-scripts/ifcfg-ens32
# 删除 /var/log 下所有文件
rm -rf /var/log/*
# 清除历史记录
history -c
# 清除 root 中的 build 日志
# 运行 安装配置命令工具
sys-unconfig
# 使用命令 更改 计算机名
hostnamectl set-hostname {计算机名}
# 编辑配置文件 更改 计算机名
echo "{计算机名}" > /etc/hostname
# 修改 IP 配置文件
sudo nano /etc/sysconfig/network-scripts/ifcfg-ens32
# IP 配置文件默认内容,使用DHCP方式获取IP地址
# {
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens32"
UUID="82bb5c3d-cc0e-4186-8841-9e1ab6e8d3eb"
DEVICE="ens32"
ONBOOT="yes"
# }
# 命令行生成配置文件 手动配置IP
sudo cat <
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens32
DEVICE=ens32
ONBOOT=yes
# 修改 IP 地址
IPADDR=172.16.28.40
PREFIX=24
# 修改 网关 地址
GATEWAY=172.16.28.254
# 修改 第1 DNS 地址
DNS1=172.16.28.5
# 修改 第2 DNS 地址
DNS2=223.5.5.5
EOF
# 重新启动 网络 服务
sudo systemctl restart network
# 查看 IP 地址
ip a
# 修改 Host 文件
sudo cat <
# 自定义 静态域名解析信息
{IP地址} {主机名}
EOF
# 备份 CentOS-base.repo 文件
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
# 安装 阿里云 EPEL 源
sudo yum install -y https://mirrors.aliyun.com/epel/epel-release-latest-7.noarch.rpm
# 备份 epel.repo 文件
mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.backup
# 备份 epel-testing.repo 文件
mv /etc/yum.repos.d/epel-testing.repo /etc/yum.repos.d/epel-testing.repo.backup
# 下载 阿里云 Centos-7.repo 文件 并替换 系统自带 CentOS-base.repo 文件
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
# 下载 阿里云 epel-7.repo 文件 并替换 系统自带 epel.repo 文件
wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
# 安装 Linux Standard Base
sudo yum install -y redhat-lsb
# 安装 IUS(Inline with Upstream Stable)源
sudo yum install -y https://mirrors.aliyun.com/ius/ius-release-el7.rpm
# 安装 Centos Release Scl 源
sudo yum install -y centos-release-scl centos-release-scl-rh
# 清理 YUM 缓存
sudo yum clean all
# 重建 YUM 缓存
sudo yum makecache
# 更新系统
sudo yum update -y
# 仅限虚拟化环境安装使用
# 可以通过命令,直接从软件源安装 Open VM Tools
# 也可以通过镜像文件,安装 VMWare VM Tools
# 安装 Open VM Tools
sudo yum install -y open-vm-tools*
# 设置 VM Tools 服务 开机自启动
systemctl enable vmtoolsd
# 启动 VM Tools 服务
systemctl start vmtoolsd
# 创建光驱文件夹
mkdir -p /mnt/cdrom
mount -t iso9660 /dev/cdrom /mnt/cdrom
# 加载光驱文件到文件夹
cd /mnt/cdrom
# 查看 CDROM 内的文件
ll
# 解压缩 VMWareTools 文件
tar -xzvf VMwareTools-10.3.23-16594550.tar.gz --directory=/tmp
# 进入 VMWareTools 安装文件目录
cd /tmp/vmware-tools-distrib/
# 安装VMWare 插件
./vmware-install.pl
# 重新启动
reboot
# 安装 系统常用 依赖 工具 组件
sudo yum install -y wget \
nano \
yum-utils \
git \
unzip \
bzip2 \
zip \
p7zip \
net-tools
# 列出所有可安装包
sudo yum grouplist
# 以包的形式安装图形界面
sudo yum groupinstall -y "GNOME 桌面"
# 获取当前启动模式
sudo systemctl get-default
# 设置开机启动为图形模式
sudo systemctl set-default graphical.target
# 设置开机启动为字符模式
sudo systemctl set-default multi-user.target
# 重新启动计算机
reboot
# 启动字符界面
ctrl + alt + F2
# 启动图形界面
sudo startx
# 以包的形式
sudo yum groupremove "GNOME 桌面"
# 安装 NTP 服务
sudo yum install -y ntp
# 配置NTP服务器地址
sudo ntpdate -u ntp.aliyun.com
# 设置本机时区为中国上海
timedatectl set-timezone Asia/Shanghai
# 将当前时间写入BIOS
sudo hwclock --localtime --systohc
# 查看系统时间
timedatectl
# 编辑 root 用户 计划任务
sudo crontab -u root -e
# 每天 向 阿里云 时间服务器 同步一次时间
* */1 * * * /usr/sbin/ntpdate -u ntpdate -u ntp.aliyun.com
# 方法2 命令行自动追加 计划任务
sudo cat <
* */1 * * * /usr/sbin/ntpdate -u ntpdate -u ntp.aliyun.com
EOF
# 查看计划任务
sudo crontab -u root -l
# 编辑 环境变量 文件
sudo cat <
# System HostName Clour Setting
export PS1=\[\e[1m\e[33m\][\[\e[1m\e[34m\]\u@\[\e[1m\e[32m\]$HOSTNAME \[\e[m\]\[\e[1m\e[35m\]\w\[\e[m\]\[\e[32m\]\[\e[1m\e[33m\]]\[\e[m\]\$
EOF
# 生效 环境变量
source /etc/profile
cat <
* hard nofile 655360
* soft nofile 655360
* hard nproc 655360
* soft nproc 655360
* soft core 655360
* hard core 655360
EOF
# 一般不建议进行本操作,请根据部署内容不同开放端口或服务
# 清空 所有防火墙规则
iptables -F
# 停止 防火墙 firewall 服务
sudo systemctl stop firewalld.service
# 禁止 防火墙 firewall 服务 开机自启动
sudo systemctl disable firewalld.service
# 查看 防火墙 firewall 服务 运行状态
sudo firewall-cmd --state
# 一般不建议进行本操作,当部署出现意外的网络故障时可关闭
# 关闭 SELinux
setenforce 0
# 禁止 SELinux 开机自启动
sed -i s/SELINUX=enforcing/SELINUX=disabled/ /etc/selinux/config
# 重新启动
reboot
# 查看 SELinux 运行状态
getenforce
# 创建 新用户
sudo useradd -r -m -s /bin/bash {用户名}
# 修改密码 方法1
sudo passwd {用户名}
# 修改密码 方法2 (可以用于脚本,生产环境不建议,因为从历史记录可以看到明文的密码)
echo "{密码}" | passwd --stdin {用户名}
# 方法 1:编辑文件,修改 /etc/sudoers 赋予管理员权限
sudo nano /etc/sudoers
# 在第99行下,添加一行
{用户名} ALL=(ALL) ALL
# 方法 2 :命令行替换,修改/etc/sudoers 赋予管理员权限
sed -i "/root\tA/a {用户名}\tALL=(ALL)\tALL" /etc/sudoers
# 创建 用户 常用目录
mkdir -p ~/temp/{logs,install,backup,shell,down}
# 创建 系统 常用目录
sudo mkdir -p /data/{docker,www,software}