Fedora (RHEL 上游)
Fedora 是 Red Hat 赞助的社区 Linux 发行版,也是 RHEL 的上游源头。每一个 RHEL 大版本都基于某个 Fedora 版本构建。理解 Fedora 与 RHEL 的关系,有助于把握 Enterprise Linux 技术发展的脉络。
Fedora 与 RHEL 的关系
Section titled “Fedora 与 RHEL 的关系”Fedora → CentOS Stream → RHEL → AlmaLinux / Rocky Linux / ...Fedora 在 EL 生态中的角色是技术创新的前沿实验场。Red Hat 的工程师在 Fedora 中引入和测试新技术,经过社区验证后,这些技术中的成熟部分会被选入下一个 RHEL 大版本。
版本对应关系
Section titled “版本对应关系”| RHEL 版本 | 基于 Fedora | 发布年份 |
|---|---|---|
| RHEL 7 | Fedora 19/20 | 2014 |
| RHEL 8 | Fedora 28 | 2019 |
| RHEL 9 | Fedora 34 | 2022 |
| RHEL 10 | Fedora 40 | 2025 |
这意味着当你使用 Fedora 40 时,实际上在提前体验 RHEL 10 的技术基础。
Fedora → RHEL 的流程
Section titled “Fedora → RHEL 的流程”- 技术在 Fedora 中首发:新的内核版本、系统组件、默认配置
- 社区验证:Fedora 的庞大用户群帮助发现问题
- 进入 CentOS Stream:成熟的技术进入 CentOS Stream 进行进一步集成测试
- RHEL 正式发布:经过全面 QA 后发布 RHEL 大版本
Fedora 版本体系
Section titled “Fedora 版本体系”Fedora 提供多个版本(Editions),面向不同使用场景。
Fedora Workstation
Section titled “Fedora Workstation”面向桌面用户和开发者的旗舰版本:
- GNOME 桌面环境(通常是最新稳定版)
- 预装开发工具
- PipeWire 音频系统
- Wayland 显示协议
- Flatpak 应用支持
适合:Linux 桌面用户、开发者工作站
Fedora Server
Section titled “Fedora Server”面向服务器和基础设施的版本:
- 最小化安装
- Cockpit Web 管理界面
- 模块化软件包管理
- 服务器角色(Server Roles)管理
适合:测试和开发服务器、实验环境
Fedora IoT
Section titled “Fedora IoT”面向物联网和边缘计算的版本:
- 基于 OSTree 的不可变系统
- 自动更新(rpm-ostree)
- 容器优先的工作负载模式
- 支持 ARM 和 x86 设备
Fedora CoreOS
Section titled “Fedora CoreOS”面向容器化工作负载的最小化操作系统:
- 自动更新
- 通过 Ignition 配置进行声明式部署
- 为运行容器而设计
- 是 Kubernetes 节点的理想 OS
# Fedora CoreOS 通过 Ignition 配置# 不使用传统的 Anaconda 安装器# 而是通过配置文件声明式部署Fedora Spins
Section titled “Fedora Spins”Fedora 还提供预装不同桌面环境的变体:
- KDE Plasma
- Xfce
- LXQt
- MATE-Compiz
- Cinnamon
- i3 / Sway (平铺窗口管理器)
- Budgie
Fedora 采用约 6 个月的发布周期:
- 每年春季和秋季各发布一个版本
- 每个版本维护约 13 个月(到下一个版本发布后约 1 个月)
- 版本号连续递增(Fedora 39, 40, 41, 42…)
与 EL 的发布周期对比
Section titled “与 EL 的发布周期对比”| 特性 | Fedora | RHEL |
|---|---|---|
| 发布周期 | ~6 个月 | ~3 年(大版本) |
| 支持周期 | ~13 个月 | ~10 年 |
| 内核版本 | 紧跟上游 | 冻结 + 回移 |
| 软件包版本 | 最新稳定版 | 版本冻结 |
| 定位 | 前沿创新 | 企业稳定 |
前沿软件版本
Section titled “前沿软件版本”Fedora 通常包含各软件的最新稳定版本:
# Fedora 上的软件版本通常比 RHEL 新很多# 例如 Fedora 41:# GCC 14.x (RHEL 9: GCC 11.x)# Python 3.13 (RHEL 9: Python 3.9)# kernel 6.x (RHEL 9: kernel 5.14)# GNOME 47 (RHEL 9: GNOME 40)First 策略
Section titled “First 策略”Fedora 遵循 “First” 策略——在主流发行版中率先采用新技术:
- 首个默认使用 systemd 的主流发行版
- 首个默认使用 Wayland 的主流发行版
- 首个默认使用 PipeWire 的主流发行版
- 首个默认使用 Btrfs 的主流桌面发行版
这些”首发”技术在 Fedora 中验证成熟后,往往会被 RHEL 和其他发行版采用。
Fedora 在较新版本中率先采用了 DNF 5 包管理器:
# Fedora 上的包管理dnf install <package>dnf updatednf search <keyword>dnf remove <package>
# DNF 5 相比 DNF 4 的改进:# - 性能大幅提升# - C++ 重写核心# - 更好的事务处理Fedora 与 EPEL
Section titled “Fedora 与 EPEL”什么是 EPEL
Section titled “什么是 EPEL”EPEL(Extra Packages for Enterprise Linux) 是 Fedora 项目为 RHEL 及其兼容发行版提供的额外软件仓库。
EPEL 中的软件包来源于 Fedora,但经过调整以在 EL 系统上编译和运行:
# 在 RHEL/AlmaLinux/Rocky Linux 上安装 EPELdnf install -y epel-release
# EPEL 提供了大量 RHEL 官方仓库中没有的软件# 例如:htop, neofetch, nginx(较新版本), nodejs 等EPEL 的重要性
Section titled “EPEL 的重要性”对于 EL 用户来说,EPEL 几乎是必装的第三方仓库:
- 提供数千个额外的软件包
- 由 Fedora 社区维护,质量有保障
- 不会与 RHEL 官方仓库冲突
- 遵循 RHEL 的兼容性指南
谁应该使用 Fedora vs EL
Section titled “谁应该使用 Fedora vs EL”选择 Fedora 的场景
Section titled “选择 Fedora 的场景”- 桌面日常使用:最新的桌面环境和应用
- 开发者工作站:最新的开发工具和语言运行时
- 技术爱好者:想要体验最新 Linux 技术
- Fedora → RHEL 预览:提前了解 RHEL 下一代的技术方向
- 短生命周期的开发环境:不需要长期维护的测试系统
选择 EL 的场景
Section titled “选择 EL 的场景”- 生产服务器:需要长期稳定和支持
- 企业应用:运行经过认证的商业软件
- 合规要求:安全认证和审计
- 长期运维:不希望频繁升级操作系统
- 一致性:大规模部署中保持统一版本
混合使用策略
Section titled “混合使用策略”许多团队采用混合策略:
开发者工作站:Fedora Workstation(最新工具)CI/CD 环境:CentOS Stream(提前测试兼容性)生产服务器:RHEL / AlmaLinux / Rocky Linux(长期稳定)获取 Fedora
Section titled “获取 Fedora”下载地址:fedoraproject.org
# 使用 Podman 快速体验 Fedora(在 EL 系统上)podman run -it fedora:latest bash
# 或使用 toolbox(Fedora 的容器化开发工具)toolbox create --distro fedora --release 41toolbox enter fedora-toolbox-41Fedora 上的包管理
Section titled “Fedora 上的包管理”# 更新系统sudo dnf update -y
# 安装开发工具sudo dnf groupinstall -y "Development Tools"
# 安装特定版本的软件sudo dnf install -y python3.13 nodejs22
# 系统升级(跨版本)sudo dnf system-upgrade download --releasever=42sudo dnf system-upgrade rebootFedora 社区
Section titled “Fedora 社区”Fedora 拥有一个庞大而活跃的社区:
- Fedora Discussion:discussion.fedoraproject.org
- Bugzilla:bugzilla.redhat.com
- Wiki:fedoraproject.org/wiki
- IRC/Matrix:Fedora 聊天频道
Fedora 变更提案(Changes)
Section titled “Fedora 变更提案(Changes)”Fedora 的所有重大变更都通过公开的 Change Proposal 流程:
- 提案者提交变更说明
- FESCo(Fedora 工程指导委员会)审核
- 社区讨论
- 投票决定是否纳入
这一透明的流程使得 Fedora 的技术演进方向是可预测的——关注 Fedora Changes,你就能大致预见 RHEL 未来几年的技术方向。
Fedora 是理解 RHEL 和整个 EL 生态不可缺少的一环。它不仅是 RHEL 的技术源头,也是 Linux 世界中最具影响力的创新平台之一。作为 EL 用户,关注 Fedora 的发展动态,就是在关注你所使用的操作系统的未来。