搭建本地YUM仓库

将系统安装盘挂载到文件系统,挂载后会有Package目录,里面保存了大量的rpm包。然后配置repo指向本地挂载文件系统来实现软件包管理。

环境

Redhat 9

步骤:

查看系统磁盘挂载情况

复制代码
[root@localhost ~]# df -Th
文件系统              类型      容量  已用  可用 已用% 挂载点
devtmpfs              devtmpfs  4.0M     0  4.0M    0% /dev
tmpfs                 tmpfs     3.8G     0  3.8G    0% /dev/shm
tmpfs                 tmpfs     1.5G  9.7M  1.5G    1% /run
/dev/mapper/rhel-root xfs        66G   22G   44G   34% /
/dev/nvme0n1p1        xfs      1014M  292M  723M   29% /boot
/dev/mapper/rhel-home xfs        32G  260M   32G    1% /home
tmpfs                 tmpfs     767M   52K  767M    1% /run/user/42
tmpfs                 tmpfs     767M   36K  767M    1% /run/user/0
[root@localhost ~]# 

挂载镜像到/mnt下

复制代码
[root@localhost ~]# mount /dev/sr0  /mnt/
mount: /mnt: WARNING: source write-protected, mounted read-only.
[root@localhost ~]# df -Th
文件系统              类型      容量  已用  可用 已用% 挂载点
devtmpfs              devtmpfs  4.0M     0  4.0M    0% /dev
tmpfs                 tmpfs     3.8G     0  3.8G    0% /dev/shm
tmpfs                 tmpfs     1.5G  9.7M  1.5G    1% /run
/dev/mapper/rhel-root xfs        66G   22G   44G   34% /
/dev/nvme0n1p1        xfs      1014M  292M  723M   29% /boot
/dev/mapper/rhel-home xfs        32G  260M   32G    1% /home
tmpfs                 tmpfs     767M   52K  767M    1% /run/user/42
tmpfs                 tmpfs     767M   36K  767M    1% /run/user/0
/dev/sr0              iso9660   9.0G  9.0G     0  100% /mnt
[root@localhost ~]# 

切换到yum创库目录打包备份其内容

复制代码
[root@localhost /]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls
mysql-community-debuginfo.repo  mysql-community.repo  mysql-community-source.repo  redhat.repo
[root@localhost yum.repos.d]# cd
[root@localhost /]# tar -cvf   /yum.repo.bak  /etc/yum.repos.d/*
tar: 从成员名中删除开头的"/"
/etc/yum.repos.d/mysql-community-debuginfo.repo
tar: 从硬连接目标中删除开头的"/"
/etc/yum.repos.d/mysql-community.repo
/etc/yum.repos.d/mysql-community-source.repo
/etc/yum.repos.d/redhat.repo
[root@localhost /]# tar -tf yum.repo.bak    // 查看归档内容
etc/yum.repos.d/mysql-community-debuginfo.repo
etc/yum.repos.d/mysql-community.repo
etc/yum.repos.d/mysql-community-source.repo
etc/yum.repos.d/redhat.repo

删除剩余仓库

复制代码
root@localhost ~]# rm -rf  /etc/yum.repos.d/*
[root@localhost ~]# ls  /etc/yum.repos.d/
[root@localhost ~]# cd  /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls
[root@localhost yum.repos.d]# 

创建本地YUM仓库

复制代码
[root@localhost yum.repos.d]# vim  loaclhost.repo
[root@localhost yum.repos.d]# yum clean  all    //清除缓存
正在更新 Subscription Management 软件仓库。
无法读取客户身份

本系统尚未在权利服务器中注册。可使用 subscription-manager 进行注册。

0 个文件已删除
[root@localhost yum.repos.d]# yum makecache    //建立元数据缓存
正在更新 Subscription Management 软件仓库。
无法读取客户身份

本系统尚未在权利服务器中注册。可使用 subscription-manager 进行注册。

AppStream                                                                                        123 MB/s | 6.3 MB     00:00    
BaseOS                                                                                            89 MB/s | 1.7 MB     00:00    
元数据缓存已建立。
[root@localhost yum.repos.d]# cat loaclhost.repo 
[AppStream]
name=AppStream     
baseurl=file:///mnt/AppStream    //路径
gpgcheck=0                       //0 表示不验证密钥
enabled=1                        // 启用此仓库

[BaseOS]
name=BaseOS
baseurl=file:///mnt/BaseOS
gpgcheck=0
enabled=1

[root@localhost yum.repos.d]# 

安装软件测试

复制代码
[root@localhost yum.repos.d]# yum -y install  bind
正在更新 Subscription Management 软件仓库。
无法读取客户身份

本系统尚未在权利服务器中注册。可使用 subscription-manager 进行注册。

上次元数据过期检查:0:07:16 前,执行于 2024年04月03日 星期三 20时29分11秒。
依赖关系解决。
=================================================================================================================================
 软件包                             架构                    版本                                仓库                        大小
=================================================================================================================================
安装:
 bind                               x86_64                  32:9.16.23-11.el9                   AppStream                  507 k
安装依赖关系:
 bind-dnssec-doc                    noarch                  32:9.16.23-11.el9                   AppStream                   49 k
 python3-bind                       noarch                  32:9.16.23-11.el9                   AppStream                   72 k
 python3-ply                        noarch                  3.11-14.el9                         BaseOS                     111 k
安装弱的依赖:
 bind-dnssec-utils                  x86_64                  32:9.16.23-11.el9                   AppStream                  121 k

事务概要
=================================================================================================================================
安装  5 软件包

总计:859 k
安装大小:2.5 M
下载软件包:
运行事务检查
事务检查成功。
运行事务测试
事务测试成功。
运行事务
  准备中  :                                                                                                                  1/1 
  安装    : python3-ply-3.11-14.el9.noarch                                                                                   1/5 
  安装    : python3-bind-32:9.16.23-11.el9.noarch                                                                            2/5 
  安装    : bind-dnssec-doc-32:9.16.23-11.el9.noarch                                                                         3/5 
  安装    : bind-dnssec-utils-32:9.16.23-11.el9.x86_64                                                                       4/5 
  运行脚本: bind-32:9.16.23-11.el9.x86_64                                                                                    5/5 
  安装    : bind-32:9.16.23-11.el9.x86_64                                                                                    5/5 
  运行脚本: bind-32:9.16.23-11.el9.x86_64                                                                                    5/5 
  验证    : bind-32:9.16.23-11.el9.x86_64                                                                                    1/5 
  验证    : bind-dnssec-doc-32:9.16.23-11.el9.noarch                                                                         2/5 
  验证    : bind-dnssec-utils-32:9.16.23-11.el9.x86_64                                                                       3/5 
  验证    : python3-bind-32:9.16.23-11.el9.noarch                                                                            4/5 
  验证    : python3-ply-3.11-14.el9.noarch                                                                                   5/5 
已更新安装的产品。

已安装:
  bind-32:9.16.23-11.el9.x86_64           bind-dnssec-doc-32:9.16.23-11.el9.noarch   bind-dnssec-utils-32:9.16.23-11.el9.x86_64  
  python3-bind-32:9.16.23-11.el9.noarch   python3-ply-3.11-14.el9.noarch            

完毕!
[root@localhost yum.repos.d]# 
相关推荐
~光~~34 分钟前
【嵌入式linux学习】Cache 策略:Write-Through / Write-Back + Allocation
linux·学习·spring
峥无40 分钟前
Linux NPTL线程:创建/终止/等待/分离/栈布局内核原理|线程下篇
linux·运维·线程
为思念酝酿的痛1 小时前
数据链路层--帧传输与链路控制
网络·网络协议·计算机网络·数据链路层
头发还在的女程序员1 小时前
【无标题】
网络·数据库·短剧小程序·短剧系统·海外短剧·短剧后台
是jin奥2 小时前
Ubuntu 访问 Windows 共享目录
linux·运维·ubuntu
Gauss松鼠会2 小时前
【GaussDB】破除gaussdb ugin索引支持中文模糊查询的迷思-字符序
java·运维·服务器·网络·数据库·gaussdb·经验总结
luiyarch2 小时前
汽车电子ISO 21448 SOTIF系列(第26期):未知危险场景的确认方法(下)——AI驱动的场景发现
网络·人工智能·安全·车载系统·汽车
砚凝霜2 小时前
【软考信息安全】第十六章 网络安全风险评估项目流程与应用
网络·安全·web安全
Mr_韩2 小时前
子网路由实战:无需公网 IP,异地直接访问家庭内网全部设备
运维·网络·物联网·nas