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 包含应用流模块。
🛠️ 操作步骤:
-
检查订阅状态:
subscription-manager status # 确认 Overall Status: Current -
启用核心仓库:
subscription-manager repos --enable=rhel-9-for-x86_64-baseos-rpms subscription-manager repos --enable=rhel-9-for-x86_64-appstream-rpms -
刷新仓库元数据:
dnf makecache # 更新仓库缓存
✅ 检查点:执行
dnf repolist应显示 enabled 的 BaseOS 和 AppStream 仓库。⚠️ 注意:若未注册订阅,将无法启用官方仓库,转用本地源。在 RHEL 10 中,仓库启用支持更多自动化选项,如集成 SCA(Simple Content Access)以简化过程。
5.3 配置本地源(未注册订阅)
🧠 知识点:本地源适用于离线环境或未订阅系统,使用 ISO 镜像模拟官方仓库。
🛠️ 操作步骤:
-
挂载 ISO 文件:
mkdir -p /mnt/rhel-iso # 创建挂载点 mount -o loop /root/rhel-9.x-x86_64-dvd.iso /mnt/rhel-iso # 挂载 ISO -
创建本地仓库配置文件:
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 -
刷新仓库元数据:
dnf makecache # 更新仓库缓存
✅ 检查点:执行
dnf repolist应显示 enabled 的 local-baseos 和 local-appstream 仓库。⚠️ 注意:本地源不支持在线更新,仅用于初始安装软件。生产环境推荐订阅官方源。
5.4 配置 EPEL 仓库
🧠 知识点:EPEL(Extra Packages for Enterprise Linux)提供额外社区软件包,扩展 RHEL 生态。
🛠️ 操作步骤:
-
安装 EPEL 仓库:
dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm # 安装 EPEL 仓库 RPM -
启用 EPEL 仓库:
dnf config-manager --set-enabled epel # 启用 EPEL 仓库 -
刷新仓库元数据:
dnf makecache # 更新仓库缓存
✅ 检查点:执行
dnf repolist | grep epel应显示 enabled 的 epel 仓库。💡 提示:EPEL 包可能与官方源冲突,优先使用官方包。在 RHEL 10 中,EPEL 支持可能进一步优化,以兼容新版本的模块化系统。
5.5 验证仓库配置
🛠️ 操作步骤:
-
列出所有仓库:
dnf repolist all # 显示所有仓库(enabled 和 disabled) -
测试安装软件包:
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 实践任务
- 使用 SecureCRT 通过 SSH(端口 2222)登录
LinuxDC,检查订阅状态。 - 启用官方 BaseOS 和 AppStream 仓库(若已订阅)。
- 配置本地源并挂载 ISO(若未订阅)。
- 安装并启用 EPEL 仓库。
- 测试安装
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 源的启用与验证。正确配置仓库是后续软件安装、安全更新和应用部署的基础,确保系统生态完整与高效。