搭建yum软件仓库(rhel9)

1.关于yum软件仓库

YUM(Yellowdog Updater Modified)是基于 RPM 包管理的 Linux 系统软件包管理工具,主要用于 RHEL、CentOS、Fedora 等系列操作系统。YUM 软件仓库(YUM Repository)则是集中存储 RPM 软件包及相关元数据的服务器或存储位置,通过标准化结构实现软件的自动安装、升级、依赖解决等功能。搭建私有 YUM 仓库对于企业内部系统管理、离线环境部署或定制化软件分发至关重要。

2.部署本地软件仓库

1/本地软件仓库

#创建挂载点

mkdir -p /var/repo

#将镜像挂载在repo文件夹(/dev/sr0通常代表物理光驱或虚拟光驱)

mount /dev/sr0 /var/repo

#查看挂载情况

df

#挂载后需确保/var/repo目录下有BaseOSAppStream子目录。

ls /var/repo/

#创建本地软件仓库文件

vim /etc/yum.repos.d/rhel9_local.repo

填入以下内容: 

[rhel9-BaseOS]
name=Local  RHEL 9 BaseOS
baseurl=file:///var/repo/BaseOS
enabled=1
gpgcheck=1
gpgkey=file:///var/repo/RPM-GPG-KEY-redhat-release

[rhel9-AppStream]
name=Local  RHEL 9 AppStream
baseurl=file:///var/repo/AppStream
enabled=1
gpgcheck=1
gpgkey=file:///var/repo/RPM-GPG-KEY-redhat-release

 

参数作用示例值说明
[rhel9-BaseOS]仓库唯一标识符(ID),用于内部引用rhel9-BaseOS需保持唯一性,建议使用版本 + 仓库类型命名
name仓库显示名称,用于用户界面(如 dnf 命令输出)Local RHEL 9 BaseOS可自定义,但建议反映来源和内容类型
baseurl软件包存储的基础 URL 路径file:///var/repo/BaseOS使用file://协议指向本地挂载目录,需确保目录存在且有读取权限
enabled是否启用此仓库(1 = 启用,0 = 禁用)1禁用后 dnf 将不会从此仓库获取软件包
gpgcheck是否验证软件包的 GPG 签名(1 = 验证,0 = 不验证)1生产环境建议启用,确保软件包未被篡改
gpgkeyGPG 公钥的路径(当gpgcheck=1时必需)file:///var/repo/RPM-GPG-KEY-redhat-release指向 RHEL 官方 GPG 密钥文件,用于验证软件包签名

#查看仓库部署情况

sudo dnf repolist enabled

部署成功如下图显示:

经过上面的操作,本地软件仓库已经能使用,但是当机器重启后,前面挂载镜像要重新进行挂载,也就是临时挂载,如果想要机器开机时就自动挂载,操作如下:

#编辑文件:

vim /etc/rc.d/rc.local

 填入挂载光盘镜像命令:同时要注意所给的注释里说明要给予改文件权限

#按照文件注释给予权限:

chmod +x /etc/rc.d/rc.local

#测试:
重启设备查看挂载情况,挂载成功如下图所示:

3.部署网络软件仓库

这边以阿里云镜像为例子:

#编辑网络软件仓库repo文件

 vim /etc/yum.repos.d/rhel9_aliyun.repo

填入以下配置:

[aliyun-BaseOS]
name=Aliyun RHEL 9 BaseOS
baseurl=https://mirrors.aliyun.com/centos-stream/9-stream/BaseOS/x86_64/os/
enabled=1
gpgcheck=0  

[aliyun-AppStream]
name=Aliyun RHEL 9 AppStream
baseurl=https://mirrors.aliyun.com/centos-stream/9-stream/AppStream/x86_64/os/
enabled=1
gpgcheck=0      

参数作用示例值说明
[aliyun-BaseOS]仓库唯一标识符(ID),用于内部引用aliyun-BaseOS需保持唯一性,建议使用有意义的名称(如镜像站点 + 仓库类型)
name仓库显示名称,用于用户界面(如 dnf 命令输出)Aliyun RHEL 9 BaseOS可自定义,但建议反映镜像源和内容类型
baseurl软件包存储的基础 URL 路径https://mirrors.aliyun.com/centos-stream/9-stream/BaseOS/x86_64/os/指向镜像站点的具体仓库目录,需包含架构(如x86_64)和路径标识(如os/
enabled是否启用此仓库(1 = 启用,0 = 禁用)1禁用后 dnf 将不会从此仓库获取软件包
gpgcheck是否验证软件包的 GPG 签名(1 = 验证,0 = 不验证)0生产环境建议启用(设为 1),需配合gpgkey参数指定公钥路径
gpgkeyGPG 公钥的 URL 路径(当gpgcheck=1时必需)https://www.centos.org/keys/RPM-GPG-KEY-CentOS-Official用于验证软件包的完整性和来源,确保不被篡改
metadata_expire元数据缓存的有效期(秒),控制多久从服务器刷新一次元数据86400(默认 1 天)可根据镜像更新频率调整,频繁更新的源可设小值(如 43200=12 小时)
cost仓库优先级成本值(数值越低越优先),需配合yum-plugin-priorities1000(默认)当有多个仓库提供相同软件包时,成本低的优先使用
skip_if_unavailable当仓库不可用时是否跳过(1 = 跳过,0 = 报错)0(默认)

 #查看仓库部署情况

sudo dnf repolist enabled

部署成功如下图显示:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Rinleren

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值