CentOS 7/8/9 系统安装与最小化配置指南

[复制链接] |主动推送
查看2708 | 回复0 | 2026-5-8 10:24:00 | 显示全部楼层 |阅读模式
CentOS 7/8/9 系统安装与最小化配置指南

本指南涵盖 CentOS 7、CentOS 8 以及 CentOS Stream 9(通常简称 CentOS 9)的安装过程与安装后的基础配置。由于这三个版本在安装界面与生命周期上差异较大,文中会分别说明,并特别指出已停维版本的处理策略长期运维建议




一、版本现状与选型建议

| 版本 | 状态 | 对应 RHEL | 建议 |
|------|------|-----------|------|
| CentOS 7 | 即将 EOL(2024-06-30) | RHEL 7 | 仅用于旧系统维护,新部署不建议 |
| CentOS 8 | 已 EOL(2021-12-31) | RHEL 8 | 不应再部署,残留系统需迁移到 CentOS Stream 8 或 Rocky/Alma |
| CentOS Stream 9 | 滚动更新,活跃 | RHEL 9 | 适合想体验 RHEL 新特性的开发/测试环境,生产环境建议使用 RHEL 或 Rocky/Alma |
对于生产环境,推荐使用 Rocky Linux 8/9AlmaLinux 8/9 替代 CentOS 8/9,两者均与 RHEL 完全二进制兼容,且有长期支持。




二、安装前的准备

1. 下载 ISO 镜像


推荐 ISO 类型:

  • DVD ISO:包含完整安装包,适合离线安装。
  • Minimal ISO:体积小,安装过程需网络下载包,适合网络环境好的场景。
  • NetInstall ISO:仅启动安装程序,全部从网络获取,灵活性高。


2. 制作启动盘

  • 虚拟机直接挂载 ISO。
  • 物理机使用工具如 Rufus (Windows)、dd (Linux)、balenaEtcher 写入 U 盘。


3. 硬件最低要求
| 资源 | 最小要求 |
|------|----------|
| CPU | 1 核心 |
| 内存 | 1 GB(CentOS 7),1.5 GB(CentOS 8/9 安装程序) |
| 磁盘 | 10 GB 以上(建议 20 GB+) |
| 网络 | 可选,但安装中连网可自动设置时间、下载更新 |




三、系统安装步骤(以最小化安装为例)

1. 引导安装介质
设置 BIOS/UEFI 从 U 盘或光驱启动,在启动菜单选择 “Install CentOS 7 / 8 / Stream 9”

2. 语言选择

  • 建议选择 English (United States),避免日后命令行乱码问题。中文本地化可在安装后配置。


3. 安装信息摘要 (Installation Summary)
所有配置集中在此界面,按顺序确保每项显示为“无警告”。

3.1 键盘与语言支持

  • 键盘布局默认 English (US)。可添加中文输入法,但不是必须。


3.2 时间与日期 (Time & Date)

  • 选择 Asia/Shanghai(上海)时区,并开启 网络时间同步 (Network Time)
  • CentOS 7 与 8/9 使用的 NTP 服务不同(chronyd 或 ntpd),安装后统一使用 chrony 管理。


3.3 安装源 (Installation Source)

  • 本地介质安装:选择“本地介质”。
  • 网络安装:配置网络后,可指定 HTTP/HTTPS/FTP 源,如 CentOS 8 使用 vault 源:

  1. http://vault.centos.org/centos/8/BaseOS/x86_64/os/
复制代码

3.4 软件选择 (Software Selection)

  • 重要:选择 最小安装 (Minimal Install)
  • 右侧可选“标准”或“兼容性库”等附件组,最小化环境下建议只保留核心,勾选可忽略。


3.5 安装目标位置 (Installation Destination)

  • 选择目标磁盘,勾选 “自定义分区 (Custom)” 或直接使用自动分区(自动分区会创建基于 LVM 的布局)。生产环境推荐用 LVM 以便后期扩容。


  推荐手动分区(最小化方案):
  | 挂载点 | 类型 | 大小建议 | 说明 |
  |--------|------|----------|------|
  | /boot | xfs (CentOS 7/8) / ext4 (可选) | 1024 MiB | 标准分区,不支持 LVM |
  | /boot/efi | EFI System Partition | 200 MiB | 仅 UEFI 启动需要 |
  | / | xfs + LVM | 剩余空间的 50% | 根分区 |
  | /home | xfs + LVM | 剩余空间的 30% | 可选,隔离用户数据 |
  | swap | swap | 1~2 倍内存大小 | 休眠需大于 RAM,最小 512 MB |
  | /var | xfs + LVM | 剩余空间 | 若独立 /home 则分配剩余空间给 /var,避免日志写满根分区 |

  若不单独分 /var 和 /home,可以仅创建 /boot、swap、/

  • 磁盘分区规划完毕后确认,接受更改。


3.6 网络与主机名 (Network & Host Name)

  • 设置主机名,如
    1. server.example.com
    复制代码

  • 启用网络接口(默认可能是 OFF),点击“配置”可设置 IPv4/IPv6。若需静态 IP,安装时先选 DHCP,安装后进入系统再改。


3.7 安全策略 (Security Policy)
通常选择默认的“No profile”,如有特殊合规需求可应用安全配置。

4. 设置 root 密码与用户

  • 设置强密码。可勾选“锁定 root 账户”以禁止 root 直接登录,推荐创建普通用户并加入
    1. wheel
    复制代码
    组。
  • 创建用户时勾选“将此用户作为管理员 (Make this user administrator)”,或手动授权 sudo。


5. 开始安装
确认配置后,点击“开始安装”。等待完成后,点击“重启系统”。




四、安装后的最小化基础配置

重启后进入命令行登录界面,用 root 或创建的 sudo 用户登录,进行以下配置。

1. 配置网络(静态 IP、IPv6、DNS)
查找网卡名:
  1. ip a
复制代码
编辑网卡配置文件(CentOS 7 使用
  1. /etc/sysconfig/network-scripts/ifcfg-<name>
复制代码
,CentOS 8/9 保留该目录但推荐 NetworkManager nmcli)。

CentOS 7 方式(/etc/sysconfig/network-scripts/ifcfg-ensXX):
  1. TYPE=Ethernet
  2. BOOTPROTO=none           # 静态 IP
  3. IPADDR=192.168.1.100
  4. PREFIX=24                # 或 NETMASK=255.255.255.0
  5. GATEWAY=192.168.1.1
  6. DNS1=8.8.8.8
  7. DNS2=114.114.114.114
  8. ONBOOT=yes
复制代码

重启网络服务:
  1. systemctl restart network
复制代码

CentOS 8/9 使用 nmcli:
  1. # 查看连接名
  2. nmcli con show
  3. # 设置静态 IP
  4. nmcli con mod "ens160" ipv4.addresses 192.168.1.100/24
  5. nmcli con mod "ens160" ipv4.gateway 192.168.1.1
  6. nmcli con mod "ens160" ipv4.dns "8.8.8.8 114.114.114.114"
  7. nmcli con mod "ens160" ipv4.method manual
  8. nmcli con up "ens160"
复制代码

2. 配置主机名
  1. hostnamectl set-hostname myserver.example.com
复制代码

3. 更新系统
由于 CentOS 8 已 EOL,官方镜像不可用,必须先切换为 vault 源 或迁移到 CentOS Stream 8。以下分版本说明。

CentOS 7
  1. yum makecache
  2. yum update -y
复制代码

CentOS 8(已停维)
  1. # 修复源指向 vault.centos.org
  2. cd /etc/yum.repos.d/
  3. sed -i 's/mirrorlist=/#mirrorlist=/g' /etc/yum.repos.d/CentOS-*.repo
  4. sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*.repo
  5. # 更新系统(包可能较旧,安全更新缺失)
  6. dnf update -y
复制代码
更好的做法是将 CentOS 8 转换为 CentOS Stream 8:
  1. dnf swap centos-linux-repos centos-stream-repos
  2. dnf distro-sync
复制代码

CentOS Stream 9
  1. dnf makecache
  2. dnf update -y
复制代码

4. 安装常用工具(最小化环境缺失很多工具)
  1. # CentOS 7
  2. yum install -y vim wget curl net-tools lsof rsync bash-completion chrony policycoreutils-python
  3. # CentOS 8/9
  4. dnf install -y vim wget curl net-tools lsof rsync bash-completion chrony policycoreutils-python-utils
复制代码

5. 配置时间同步 (NTP)
统一使用 chrony(CentOS 7 默认安装 ntp,可改为 chrony 或保留 ntp,推荐 chrony)。
  1. systemctl enable --now chronyd
复制代码
配置文件
  1. /etc/chrony.conf
复制代码
可添加国内 NTP 服务器:
  1. server ntp.aliyun.com iburst
  2. server ntp.tencent.com iburst
复制代码
重启服务:
  1. systemctl restart chronyd
  2. chronyc sources -v
复制代码

6. SELinux 处理
最小化安装后 SELinux 默认为
  1. Enforcing
复制代码
,不建议关闭,但需确保其正确配置不阻碍服务。可先检查状态:
  1. getenforce
复制代码
如果某些应用报权限问题,查看日志
  1. /var/log/audit/audit.log
复制代码
并使用
  1. audit2allow
复制代码
生成策略,而不是直接
  1. setenforce 0
复制代码


若要临时关闭测试:
  1. setenforce 0
复制代码
永久关闭需编辑
  1. /etc/selinux/config
复制代码
  1. SELINUX=enforcing
复制代码
改为
  1. disabled
复制代码
,并重启系统。

7. 防火墙 (firewalld)
最小化安装默认启用 firewalld。开放必要端口:
  1. firewall-cmd --permanent --add-service=ssh
  2. firewall-cmd --reload
复制代码
查看规则:
  1. firewall-cmd --list-all
复制代码
若需打开特定端口(如 8080):
  1. firewall-cmd --permanent --add-port=8080/tcp
  2. firewall-cmd --reload
复制代码

8. SSH 安全加固
编辑
  1. /etc/ssh/sshd_config
复制代码
,调整以下参数:
  1. PermitRootLogin no              # 禁止 root 直接登录
  2. PasswordAuthentication yes       # 如果已经配置密钥,可设为 no
  3. PubkeyAuthentication yes
  4. AllowUsers youruser              # 允许登录的用户
复制代码
重启 sshd:
  1. systemctl restart sshd
复制代码

注意:CentOS 7 的服务名为
  1. sshd
复制代码
,CentOS 8/9 为
  1. sshd
复制代码
一样。

9. 添加 sudo 用户(如安装时未创建)
  1. useradd -m john
  2. passwd john
  3. usermod -aG wheel john
复制代码
测试 sudo 权限:
  1. su - john
复制代码
然后
  1. sudo -i
复制代码


10. 设置系统语言与键盘

  • 查看当前 locale:
    1. localectl
    复制代码
  • 设置 LANG 为英文(避免中文 TTY 乱码):

  1. localectl set-locale LANG=en_US.UTF-8
复制代码

11. 关闭不必要的服务
查看启动服务:
  1. systemctl list-unit-files --type=service | grep enabled
复制代码
停止并禁用例如
  1. kdump
复制代码
(如不需要):
  1. systemctl stop kdump
  2. systemctl disable kdump
复制代码

12. 配置 yum/dnf 源(国内加速)
对于 CentOS 7,可替换为阿里云或清华镜像:
  1. # 备份
  2. mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
  3. curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
  4. yum clean all && yum makecache
复制代码
CentOS Stream 9 可使用 EPEL 和官方镜像,同样可改为阿里云 Stream 源:
  1. sed -i 's|^mirrorlist=|#mirrorlist=|g' /etc/yum.repos.d/centos*.repo
  2. sed -i 's|#baseurl=http://mirror.stream.centos.org|baseurl=https://mirrors.aliyun.com/centos-stream|g' /etc/yum.repos.d/centos*.repo
复制代码




五、版本特性差异速查

| 特性 | CentOS 7 | CentOS 8 | CentOS Stream 9 |
|------|----------|----------|-----------------|
| 包管理器 | yum | dnf | dnf |
| 文件系统 | xfs (默认) | xfs | xfs |
| 内核版本 | 3.10 | 4.18 | 5.14+ |
| 网络服务 | network / NetworkManager | NetworkManager(推荐) | NetworkManager |
| 防火墙 | firewalld | firewalld | firewalld |
| 时间同步 | chrony/ntpd | chrony(默认) | chrony |
| Python | 2.7 (默认) | 3.6 (无默认 python) | 3.9 (提供平台) |
| 容器支持 | Docker 需额外安装 | podman 内置 | podman 内置 |




六、安装后验证清单

  • [ ] 网络连通性:
    1. ping -c 4 8.8.8.8
    复制代码
  • [ ] DNS 解析:
    1. nslookup www.baidu.com
    复制代码
    (需要
    1. bind-utils
    复制代码

  • [ ] 系统时间:
    1. timedatectl
    复制代码
  • [ ] SELinux 模式:
    1. getenforce
    复制代码
  • [ ] 防火墙状态:
    1. firewall-cmd --state
    复制代码
  • [ ] 磁盘空间:
    1. df -h
    复制代码
  • [ ] 可用内存:
    1. free -h
    复制代码
  • [ ] 核心服务:
    1. systemctl status sshd chronyd
    复制代码


全部通过后,即可在此最小化系统上部署所需的应用服务。




七、建议与最佳实践

  • CentOS 7 即将停维:尽快制定迁移计划至 Rocky/Alma 9 或 RHEL。
  • CentOS 8 不建议保留:尽快切换至 Stream 8 或 Rocky/Alma 8。
  • 始终使用最小化安装,按需添加包,减少攻击面。
  • 配置完成后创建快照/备份,便于快速恢复。
  • 定期更新安全补丁(对于 EOL 系统只能迁移或隔离)。
  • 生产环境务必设置严格的防火墙规则和 SELinux 策略


本指南为通用最小化安装与配置流程,适用于物理服务器、虚拟机及公有云环境。根据业务需求,后续可在此基础上继续安装数据库、Web 服务、监控等组件。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则