跳转至

5. 软件仓库配置

本章节指导在 RHEL 9(主机名 LinuxDC)上使用 SecureCRT 和 SecureFX 配置软件仓库,涵盖官方仓库(BaseOS 和 AppStream)、本地源(未注册订阅)以及 EPEL 仓库的配置。内容设计简洁,步骤清晰,注释明确,适合初学者和运维人员。所有操作在 LinuxDC 环境中测试,确保一致性和可重复性。


5.1 前提条件

在开始配置之前,请确保满足以下条件:

  • RHEL 9 已正确安装(参考第 1 章),主机名设置为 LinuxDC
  • 使用 SecureCRT 通过 SSH2 协议(端口 2222)登录(参考第 9 章)。
  • 使用 SecureFX 通过 SFTP 协议传输文件。
  • 若使用官方仓库,需完成 Red Hat 订阅注册(参考第 2 章)。
  • 若未注册订阅,需准备 RHEL 9 ISO 文件,保存至 /root/rhel-9.x-x86_64-dvd.iso(参考第 1 章)。
  • 网络连接正常(官方仓库和 EPEL 仓库需联网,本地源无需联网)。

💡 提示
确保 SecureCRT 和 SecureFX 的版本兼容 RHEL 9,建议使用最新版本以避免协议或连接问题。 验证网络连通性:使用 ping 8.8.8.8 测试网络是否正常。

检查点
- [ ] 系统已注册订阅(若使用官方仓库)。
- [ ] ISO 文件已上传至 /root(若使用本地源)。
- [ ] 网络可达(ping 测试)。


5.2 配置官方仓库(已注册订阅)

🧠 知识点:官方仓库依赖 Red Hat 订阅,提供稳定、安全的软件包。BaseOS 包含核心系统包,AppStream 包含应用流模块。

🛠️ 操作步骤

  1. 检查订阅状态:

    subscription-manager status  # 确认 Overall Status: Current
    

  2. 启用核心仓库:

    subscription-manager repos --enable=rhel-9-for-x86_64-baseos-rpms
    subscription-manager repos --enable=rhel-9-for-x86_64-appstream-rpms
    

  3. 刷新仓库元数据:

    dnf makecache  # 更新仓库缓存
    

检查点:执行 dnf repolist 应显示 enabled 的 BaseOS 和 AppStream 仓库。

⚠️ 注意:若未注册订阅,将无法启用官方仓库,转用本地源。在 RHEL 10 中,仓库启用支持更多自动化选项,如集成 SCA(Simple Content Access)以简化过程。


5.3 配置本地源(未注册订阅)

🧠 知识点:本地源适用于离线环境或未订阅系统,使用 ISO 镜像模拟官方仓库。

🛠️ 操作步骤

  1. 挂载 ISO 文件:

    mkdir -p /mnt/rhel-iso  # 创建挂载点
    mount -o loop /root/rhel-9.x-x86_64-dvd.iso /mnt/rhel-iso  # 挂载 ISO
    

  2. 创建本地仓库配置文件:

    vim /etc/yum.repos.d/local-rhel.repo  # 创建本地仓库配置文件
    # 添加以下内容:
    [local-baseos]
    name=Local RHEL 9 BaseOS
    baseurl=file:///mnt/rhel-iso/BaseOS
    enabled=1
    gpgcheck=0
    
    [local-appstream]
    name=Local RHEL 9 AppStream
    baseurl=file:///mnt/rhel-iso/AppStream
    enabled=1
    gpgcheck=0
    

  3. 刷新仓库元数据:

    dnf makecache  # 更新仓库缓存
    

检查点:执行 dnf repolist 应显示 enabled 的 local-baseos 和 local-appstream 仓库。

⚠️ 注意:本地源不支持在线更新,仅用于初始安装软件。生产环境推荐订阅官方源。


5.4 配置 EPEL 仓库

🧠 知识点:EPEL(Extra Packages for Enterprise Linux)提供额外社区软件包,扩展 RHEL 生态。

🛠️ 操作步骤

  1. 安装 EPEL 仓库:

    dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm  # 安装 EPEL 仓库 RPM
    

  2. 启用 EPEL 仓库:

    dnf config-manager --set-enabled epel  # 启用 EPEL 仓库
    

  3. 刷新仓库元数据:

    dnf makecache  # 更新仓库缓存
    

检查点:执行 dnf repolist | grep epel 应显示 enabled 的 epel 仓库。

💡 提示:EPEL 包可能与官方源冲突,优先使用官方包。在 RHEL 10 中,EPEL 支持可能进一步优化,以兼容新版本的模块化系统。


5.5 验证仓库配置

🛠️ 操作步骤

  1. 列出所有仓库:

    dnf repolist all  # 显示所有仓库(enabled 和 disabled)
    

  2. 测试安装软件包:

    dnf install -y httpd  # 测试安装 httpd(从 AppStream 或 EPEL)
    

检查点:无错误输出,软件包成功安装。执行 dnf info httpd 查看包信息。


5.6 常见问题与排查

🔍 故障排查

  • 问题:仓库启用失败
    解决:检查订阅状态(subscription-manager status)或网络;尝试 subscription-manager refresh

  • 问题:本地源挂载错误
    解决:确认 ISO 路径和挂载点权限(ls -l /mnt/rhel-iso);使用 umount /mnt/rhel-iso 卸载后重试。

  • 问题:EPEL 安装超时
    解决:检查网络或代理;手动下载 RPM 并使用 dnf localinstall 安装。

💡 提示:使用 dnf clean all 清理缓存以解决元数据问题。


5.7 实践任务

  1. 使用 SecureCRT 通过 SSH(端口 2222)登录 LinuxDC,检查订阅状态。
  2. 启用官方 BaseOS 和 AppStream 仓库(若已订阅)。
  3. 配置本地源并挂载 ISO(若未订阅)。
  4. 安装并启用 EPEL 仓库。
  5. 测试安装 htop 并验证仓库正常。

检查点dnf repolist 显示所有配置仓库 enabled,软件安装无误。


5.8 自测问题

  • 问题:如何启用官方 BaseOS 仓库?
    答案

    subscription-manager repos --enable rhel-9-for-x86_64-baseos-rpms
    

  • 问题:如何配置本地源?
    答案:上传 ISO 至 /root/rhel-9.x-x86_64-dvd.iso,挂载至 /mnt/rhel-iso,编辑 /etc/yum.repos.d/local-rhel.repo 添加 BaseOS 和 AppStream 配置。

  • 问题:如何验证 EPEL 仓库是否启用?
    答案

    dnf repolist | grep epel
    


5.9 补充说明

  • 安全建议:生产环境中,建议启用 GPG 校验(gpgcheck=1)并导入 Red Hat 官方 GPG 密钥(/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release)。
  • 性能优化:使用 dnf 的 --refresh 选项定期更新仓库元数据:
    dnf makecache --refresh
    
  • 故障排查:启用调试日志(dnf --verbose)以获取详细错误信息。

💡 提示
定期检查 Red Hat 和 EPEL 官方公告,确保使用最新仓库地址和软件包。


🧾 总结
本章完整介绍了 RHEL 9 软件仓库的配置流程,包括官方、本地和 EPEL 源的启用与验证。正确配置仓库是后续软件安装、安全更新和应用部署的基础,确保系统生态完整与高效。