EPEL仓库 vs CRB仓库

在Rocky Linux 9上的区别

项目 EPEL (Extra Packages for Enterprise Linux) CRB (Code Ready Builder)
类型 第三方扩展仓库 官方基础辅助仓库
维护者 Fedora 社区(志愿者) Rocky Linux / Red Hat 官方
内容 大量额外开源软件包(如 htopfail2banffmpeg-freeiotopncdunginx 较新版本等) 大量开发库*-devel)、构建依赖、头文件、调试相关包(如 ladsparubberband 等)
默认状态 默认不安装,需要手动安装 epel-release 默认禁用(enabled=0)
主要用途 扩展系统功能,安装 baseos/appstream 中没有的常用软件 提供编译和依赖支持,让复杂软件能成功安装
是否必须启用 想安装额外软件时启用 安装很多 EPEL 包时必须启用
包来源 从 Fedora 重新构建,针对 Enterprise Linux 来自 Rocky Linux 官方构建
体积/影响 只添加需要的软件,不会替换系统核心包 包含很多开发包,启用后仓库较大
与系统的关系 补充性质,不会覆盖 baseos/appstream 中的包 系统官方的一部分(和 baseos、appstream 同级别)

两者最重要的关系

  • EPEL 很多包依赖 CRB
    例如你之前安装 ffmpeg-free 时,报错缺少 ladsparubberband 等,就是因为这些依赖包放在 CRB 里,而不是 baseos 或 appstream。
  • 安装顺序建议
    1. 先启用 CRB
    2. 再安装 EPEL
1
2
3
4
5
sudo dnf config-manager --set-enabled crb     
# 或 sudo /usr/bin/crb enable

sudo dnf install -y epel-release
sudo dnf makecache

总结

  • CRB 是“系统开发工具箱”(提供构建依赖,让软件能编译和运行)。
  • EPEL 是“额外应用商店”(提供大量实用软件)。
  • 普通服务器:启用 CRB + 安装 EPEL 就够用大多数情况。
  • 如果你只想装少数几个包,可以临时启用 CRB:
    1
    sudo dnf install -y --enablerepo=crb ffmpeg-free