RHEL/CentOS 离线部署指南:配置本地 ISO 镜像作为 YUM 仓库

引言

在 Linux 系统管理工作中,有时我们需要在没有网络连接的环境中安装软件包,或者希望使用特定的 ISO 镜像作为软件源。本文将详细介绍如何在 RHEL(Red Hat Enterprise Linux)或 CentOS 系统中,将本地 ISO 镜像配置为 YUM 仓库,实现离线软件包安装。

通过本文的步骤,您可以:

  1. 创建正确的 YUM 仓库配置文件
  2. 挂载 ISO 镜像到指定目录
  3. 配置本地仓库并验证可用性
  4. 解决常见的配置问题

这种方法特别适用于:

  • 离线环境下的系统部署
  • 需要重复安装相同软件包的环境
  • 测试特定版本软件包的场景

1. 创建配置文件Linux/CentOS 中配置本地 ISO 镜像作为 YUM 仓库

sudo vi /etc/yum.repos.d/iso.repo

配置内容详解:

复制代码
[iso_base]                    # 仓库ID,用于唯一标识这个仓库
name=iso_base                # 仓库显示名称,在 yum repolist 中显示
baseurl=file:///mnt/BaseOS/  # 仓库路径,file:// 表示本地文件系统路径
gpgcheck=0                   # GPG签名检查,0=禁用,1=启用(需要配置gpgkey)
enabled=1                    # 仓库启用状态,1=启用,0=禁用

[iso_app]                     # 第二个仓库的ID
name=iso_app                 # 第二个仓库的显示名称
baseurl=file:///mnt/AppStream/ # AppStream 仓库路径
gpgcheck=0                   # 同样禁用GPG检查
enabled=1                    # 启用该仓库

关键参数解释:

  • baseurl : 指定仓库的路径。file:// 协议表示本地文件系统,后面跟的是 ISO 镜像挂载后的实际路径。
  • gpgcheck: 设置为 0 表示不检查软件包的 GPG 签名。在生产环境中,建议配置正确的 GPG 密钥并设置为 1 以确保软件包完整性。
  • enabled: 设置为 1 表示该仓库可用,yum 会从这个仓库搜索和安装软件包。

RHEL/CentOS 8 及以后的版本通常包含两个主要仓库:

  1. BaseOS: 包含操作系统核心组件和基础软件包
  2. AppStream: 包含应用程序、运行时环境和其他工具

2. 挂载 ISO 镜像

复制代码
mkdir -p /mnt
mount -o loop /path/to/rhel.iso /mnt
# 确认 /mnt/BaseOS 和 /mnt/AppStream 存在
ls -l /mnt/

3. 清理缓存并验证

复制代码
yum clean all
yum repolist

4. 测试安装

复制代码
sudo yum install -y <任意包名>

5. 常见问题排查

下表列出了配置本地 ISO 镜像作为 YUM 仓库时可能遇到的常见问题及其解决方法:

问题现象 可能原因 解决方法
yum repolist 看不到仓库 配置文件后缀不是 .repo 将配置文件重命名为以 .repo 结尾
baseurl 找不到路径 挂载点不存在或路径写错 使用 ls /mnt/BaseOS 检查目录是否存在
yum install 报错 gpgcheck=1 但未配置 GPG 密钥 临时设为 gpgcheck=0,或配置正确的 gpgkey
仓库 ID 冲突 与其他仓库重名 修改 [仓库ID] 为唯一值
相关推荐
路溪非溪3 分钟前
C++标准库之智能指针
linux·开发语言·c++
程序员大雄学编程10 分钟前
Linux 磁盘满了怎么排查?df / du / find 三步定位大文件
linux·运维·php
RuoyiOffice19 分钟前
Hyper-V+Kubernetes 搭建实战:保留 Windows,构建三节点 Linux 容器集群
linux·spring boot·kubernetes·containerd·hyper-v·微服务部署·ruoyi office
Bruce_Liuxiaowei22 分钟前
前端校验登录态,等于没校验——一次应急广播终端高危漏洞的发现与报送
运维·前端·安全
承渊政道40 分钟前
Linux网络学习【五种IO模型与⾮阻塞IO】
linux·网络·学习·ubuntu·io模型·非阻塞io
时间售卖铺1 小时前
Docker私有仓库搭建与实战指南
运维·docker·云原生·容器
快乐的熊二1 小时前
每天自动领积分:Trae CN + WorkBuddy 签到自动化
运维·自动化
skywalk81631 小时前
卡不等于分支:我用 TRAE 宝配合 Hive 跑三张任务卡的一天
运维·人工智能·hive·trae
znnnk1 小时前
【Fetch】AI 自动化中的应用——从接口请求到数据获取
运维·自动化
2501_927283582 小时前
同样是自动化立库,堆垛机和四向车差别在哪里?
运维·自动化