1.1.1 主流发行版对比与选型策略

主流发行版选型需兼顾稳定性、生态、支持与合规。常见阵营:RHEL 系(RHEL/CentOS Stream/Rocky/Alma)、Debian 系(Debian/Ubuntu LTS)、SUSE 系(SLES/openSUSE)。RHEL 系稳定且长期支持;CentOS Stream 更前沿;Rocky/Alma 强调 RHEL 兼容。Debian 系包管理成熟,Ubuntu LTS 在云与容器生态占比高。SUSE 系企业工具与合规特性突出。

原理草图(选型与落地流程):

文章图片

选型策略要点:
1. 生命周期:核心生产优先 LTS/企业版,关注 EOL 与补丁窗口。
2. 生态兼容:确认 MySQL/Nginx/Redis/Kafka/ZK 等仓库版本与维护频率。
3. 支持与合规:是否需要官方 SLA、认证与安全基线。
4. 团队经验:熟悉度降低故障与运维成本。
5. 安全响应:CVE 修复速度、加固与审计能力。

对比速览(示例):
| 维度 | RHEL系(Rocky/Alma) | Debian系(Ubuntu LTS) | SUSE系(SLES) |
|---|---|---|---|
| 适配生态 | 企业中间件丰富 | 云原生/容器占优 | 企业工具/合规强 |
| 支持模式 | 社区+可购商业 | 社区+Canonical | 商业支持完善 |
| 包管理 | dnf/yum | apt | zypper |
| 适用场景 | 传统企业生产 | 云/边缘/容器 | 金融/政企 |

示例:发行版镜像校验与安装准备(Rocky/Ubuntu)

# 1) 下载 ISO 与校验文件(示例链接需替换为实际镜像站)
curl -O https://mirror.example/rocky/9/isos/x86_64/Rocky-9.3-x86_64-dvd.iso
curl -O https://mirror.example/rocky/9/isos/x86_64/CHECKSUM

# 2) 校验 SHA256
grep "Rocky-9.3-x86_64-dvd.iso" CHECKSUM | sha256sum -c -
# 预期:Rocky-9.3-x86_64-dvd.iso: OK

# Ubuntu 示例
curl -O https://mirror.example/ubuntu/22.04/ubuntu-22.04.4-live-server-amd64.iso
curl -O https://mirror.example/ubuntu/22.04/SHA256SUMS
grep "ubuntu-22.04.4-live-server-amd64.iso" SHA256SUMS | sha256sum -c -
# 预期:...: OK

示例:快速确认系统版本与内核(验证选型一致性)

# 通用
cat /etc/os-release
uname -r
# 预期:发行版ID与版本号符合选型方案

示例:验证中间件生态可用性(以 MySQL/Nginx 为例)

# RHEL系
sudo dnf list --available | egrep 'mysql|nginx' | head

# Debian/Ubuntu
sudo apt update
apt-cache policy mysql-server nginx | sed -n '1,6p'
# 预期:有可用版本且非过旧

安装提示(最小化镜像验证可行性):

# Rocky/Alma: 安装最小化后验证必要工具
sudo dnf install -y vim curl net-tools
systemctl status sshd --no-pager

# Ubuntu: 最小化镜像常用包
sudo apt install -y vim curl net-tools
systemctl status ssh --no-pager

排错清单(镜像/仓库问题):

# 1) 仓库不可用/超时
# RHEL系
sudo dnf clean all && sudo dnf makecache
# Debian系
sudo apt update

# 2) DNS解析失败
cat /etc/resolv.conf
ping -c 2 mirrors.example.com
# 处理:配置正确的nameserver或本地DNS

# 3) 证书/时间问题
date
timedatectl status
# 处理:校时后重试

练习:
1. 选择一个目标场景(如电商Web、日志平台、容器平台),按选型策略给出推荐发行版与理由。
2. 完成镜像下载与 SHA256 校验,记录验证结果。
3. 在两种发行版上验证 MySQL 与 Nginx 的可用版本,并对比差异。
4. 人为配置错误 DNS,观察仓库更新失败,按排错清单恢复。