在Linux系统中配置本地yum源仓库和在线yum源仓库(VMware虚拟机)


前言

  • 在主机中安装了Linux操作系统以后,就具备了提供软件服务、网络服务等功能的基础
  • 然而随操作系统一起安装的软件包毕竟只有少数,实现的功能也比较有限
  • 当需要为主机提供更多的功能时,安装新的应用程序就称为必然需要面对的工作

一、RPM与YUM的区别

  • RPM包是各种Linux发行版本中应用最广泛的软件包之一
  • RPM软件包管理机制最早由Red Hat公司提出,后来随着版本的升级逐渐融入了更多的优秀特性,称为众多Linux发行版中公认的软件包管理标准
  • 使用RPM我们可以很方便的进行软件的安装、查询、卸载、升级等工作,但是RPM软件包之间的依赖性问题往往会很繁琐,尤其是软件由多个RPM包组成时
  • Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器
  • 基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装

二、配置本地yum源仓库

  • 之前我有一篇博客,里面有详细介绍,包括CentOS7的学习资料
    链接:https://blog.csdn.net/weixin_51486343/article/details/109815397
  • 之前在搭建虚拟VMware虚拟环境的时候,已经添加了CentOS镜像文件,接下来我们需要在虚拟机设置里面把“已连接”选项勾上
    mark
  • 这个时候你会发现在桌面出现了“CentOS 7 x86_64"这个像光盘一样的东西
    mark
  • 进入终端,开始下步操作
    • mount /dev/cdrom /mnt/
      ##把光盘挂载到/mnt目录下
    • cd /etc/yum.repos.d/
      ##进入到/etc下的yum.repos.d的目录下
    • mkdir repos.bak
      ##创建一个叫做repos.bak的新目录
    • mv *.repo repos.bak
      ##将带有.repo的所有文件移动到repos.bak目录下
  • 创建yum源仓库如下
    • cd /etc/yum.repos.d/
    • vim local.repo
    • 里面什么都没有,需要我们进行编辑,按“i”进入编辑模式开始逐行编辑
      mark
  • 还需要删除yum缓存并进行更新
    mark
  • 好了,再来安装一个文件验证一下
    mark
    成功

三、配置在线yum源仓库

  • 网络yum源具有比镜像yum更新更全的软件包
  • 而且安装非常简单,在有网络的环境下建议使用
  • 以下为阿里云yum
  • 首先第一步,将在线yum源配置文件下载到本地(直接复制粘贴,有点长)
[root@localhost ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
--2020-12-11 14:57:15--  https://mirrors.aliyun.com/repo/Centos-7.repo
正在解析主机 mirrors.aliyun.com (mirrors.aliyun.com)... 117.91.177.244, 58.223.210.227, 58.216.4.238, ...
正在连接 mirrors.aliyun.com (mirrors.aliyun.com)|117.91.177.244|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:2523 (2.5K) [application/octet-stream]
正在保存至: “/etc/yum.repos.d/CentOS-Base.repo”

100%[====================================>] 2,523       --.-K/s 用时 0s      

2020-12-11 14:57:16 (802 MB/s) - 已保存 “/etc/yum.repos.d/CentOS-Base.repo” [2523/2523])

[root@localhost ~]# 

  • 接下来我们需要将之前的本地yum源配置文件挪作,以让系统能读取到我们刚下载的在线
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls
CentOS-Base.repo  local.repo  repos.bak        ##这里可以看到多了一个“CentOS-Base.repo,就它”
[root@localhost yum.repos.d]# mv local.repo repos.bak/
  • 最后一步,清除之前的yum缓存,然后再新建阿里云yum缓存即可(需静静等待一会儿)
[root@localhost yum.repos.d]# yum clean all
已加载插件:fastestmirror, langpacks
正在清理软件源: base extras updates
Cleaning up everything
Maybe you want: rm -rf /var/cache/yum, to also free up space taken by orphaned data from disabled or removed repos
Cleaning up list of fastest mirrors
[root@localhost yum.repos.d]# yum makecache 
已加载插件:fastestmirror, langpacks
base                                                   | 3.6 kB     00:00     
extras                                                 | 2.9 kB     00:00     
updates                                                | 2.9 kB     00:00     
base/7/x86_64/primary_db       FAILED                                          
http://mirrors.cloud.aliyuncs.com/centos/7/os/x86_64/repodata/6d0c3a488c282fe537794b5946b01e28c7f44db79097bb06826e1c0c88bad5ef-primary.sqlite.bz2: [Errno 14] curl#6 - "Could not resolve host: mirrors.cloud.aliyuncs.com; Name or service not known"
正在尝试其它镜像。
(1/10): base/7/x86_64/group_gz                           | 153 kB   00:00     
(2/10): extras/7/x86_64/other_db                         | 134 kB   00:00     
(3/10): extras/7/x86_64/filelists_db                     | 224 kB   00:00     
(4/10): base/7/x86_64/other_db                           | 2.6 MB   00:00     
(5/10): updates/7/x86_64/filelists_db                    | 2.1 MB   00:00     
(6/10): updates/7/x86_64/other_db                        | 226 kB   00:00     
(7/10): base/7/x86_64/primary_db                         | 6.1 MB   00:00     
base/7/x86_64/filelists_db     FAILED                                          
http://mirrors.aliyuncs.com/centos/7/os/x86_64/repodata/d6d94c7d406fe7ad4902a97104b39a0d8299451832a97f31d71653ba982c955b-filelists.sqlite.bz2: [Errno 14] curl#7 - "Failed connect to mirrors.aliyuncs.com:80; Connection refused"
正在尝试其它镜像。
extras/7/x86_64/primary_db     FAILED                                          
http://mirrors.aliyuncs.com/centos/7/extras/x86_64/repodata/6de1755ab3e4e9bd0ee8ff31b6c979fe8a2e132b66629bf4b659b0a7878fe70f-primary.sqlite.bz2: [Errno 14] curl#7 - "Failed connect to mirrors.aliyuncs.com:80; Connection refused"
正在尝试其它镜像。
updates/7/x86_64/primary_db    FAILED                                          
http://mirrors.aliyuncs.com/centos/7/updates/x86_64/repodata/21d17a17af2a9bb0da67c098868bc431078c8dfc5ed7e36ee9b25300d6913b72-primary.sqlite.bz2: [Errno 14] curl#7 - "Failed connect to mirrors.aliyuncs.com:80; Connection refused"
正在尝试其它镜像。
(8/10): extras/7/x86_64/primary_db                       | 222 kB   00:00     
(9/10): base/7/x86_64/filelists_db                       | 7.2 MB   00:00     
(10/10): updates/7/x86_64/primary_db                     | 3.7 MB   00:00     
Determining fastest mirrors
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
元数据缓存已建立
[root@localhost yum.repos.d]# 

  • 最最后,再来验证一下
[root@localhost yum.repos.d]# yum -y install dhcp
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
正在解决依赖关系
--> 正在检查事务
---> 软件包 dhcp.x86_64.12.4.2.5-58.el7.centos 将被 升级
---> 软件包 dhcp.x86_64.12.4.2.5-82.el7.centos 将被 更新
--> 正在处理依赖关系 dhcp-libs(x86-64) = 12:4.2.5-82.el7.centos,它被软件包 12:dhcp-4.2.5-82.el7.centos.x86_64 需要
--> 正在处理依赖关系 dhcp-common = 12:4.2.5-82.el7.centos,它被软件包 12:dhcp-4.2.5-82.el7.centos.x86_64 需要
--> 正在处理依赖关系 libisc-export.so.169()(64bit),它被软件包 12:dhcp-4.2.5-82.el7.centos.x86_64 需要
--> 正在处理依赖关系 libdns-export.so.1102()(64bit),它被软件包 12:dhcp-4.2.5-82.el7.centos.x86_64 需要
--> 正在检查事务
---> 软件包 bind-export-libs.x86_64.32.9.11.4-26.P2.el7_9.2 将被 安装
---> 软件包 dhcp-common.x86_64.12.4.2.5-58.el7.centos 将被 升级
--> 正在处理依赖关系 dhcp-common = 12:4.2.5-58.el7.centos,它被软件包 12:dhclient-4.2.5-58.el7.centos.x86_64 需要
---> 软件包 dhcp-common.x86_64.12.4.2.5-82.el7.centos 将被 更新
---> 软件包 dhcp-libs.x86_64.12.4.2.5-58.el7.centos 将被 升级
---> 软件包 dhcp-libs.x86_64.12.4.2.5-82.el7.centos 将被 更新
--> 正在检查事务
---> 软件包 dhclient.x86_64.12.4.2.5-58.el7.centos 将被 升级
---> 软件包 dhclient.x86_64.12.4.2.5-82.el7.centos 将被 更新
--> 解决依赖关系完成

依赖关系解决

===========================================================================================================================================================================================
 Package                                         架构                                  版本                                                   源                                      大小
===========================================================================================================================================================================================
正在更新:
 dhcp                                            x86_64                                12:4.2.5-82.el7.centos                                 base                                   515 k
为依赖而安装:
 bind-export-libs                                x86_64                                32:9.11.4-26.P2.el7_9.2                                updates                                1.1 M
为依赖而更新:
 dhclient                                        x86_64                                12:4.2.5-82.el7.centos                                 base                                   286 k
 dhcp-common                                     x86_64                                12:4.2.5-82.el7.centos                                 base                                   176 k
 dhcp-libs                                       x86_64                                12:4.2.5-82.el7.centos                                 base                                   133 k

事务概要
===========================================================================================================================================================================================
安装           ( 1 依赖软件包)
升级  1 软件包 (+3 依赖软件包)

总下载量:2.2 M
Downloading packages:
No Presto metadata available for base
警告:/var/cache/yum/x86_64/7/base/packages/dhcp-4.2.5-82.el7.centos.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
dhcp-4.2.5-82.el7.centos.x86_64.rpm 的公钥尚未安装
(1/5): dhcp-4.2.5-82.el7.centos.x86_64.rpm                                                                                                                          | 515 kB  00:00:00     
(2/5): dhclient-4.2.5-82.el7.centos.x86_64.rpm                                                                                                                      | 286 kB  00:00:00     
(3/5): dhcp-libs-4.2.5-82.el7.centos.x86_64.rpm                                                                                                                     | 133 kB  00:00:00     
(4/5): dhcp-common-4.2.5-82.el7.centos.x86_64.rpm                                                                                                                   | 176 kB  00:00:00     
bind-export-libs-9.11.4-26.P2.el7_9.2.x86_64.rpm 的公钥尚未安装
(5/5): bind-export-libs-9.11.4-26.P2.el7_9.2.x86_64.rpm                                                                                                             | 1.1 MB  00:00:00     
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
总计                                                                                                                                                       5.1 MB/s | 2.2 MB  00:00:00     
从 http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7 检索密钥
导入 GPG key 0xF4A80EB5:
 用户ID     : "CentOS-7 Key (CentOS 7 Official Signing Key) <[email protected]>"
 指纹       : 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
 来自       : http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在更新    : 12:dhcp-libs-4.2.5-82.el7.centos.x86_64                                                                                                                                1/9 
  正在更新    : 12:dhcp-common-4.2.5-82.el7.centos.x86_64                                                                                                                              2/9 
  正在安装    : 32:bind-export-libs-9.11.4-26.P2.el7_9.2.x86_64                                                                                                                        3/9 
  正在更新    : 12:dhclient-4.2.5-82.el7.centos.x86_64                                                                                                                                 4/9 
  正在更新    : 12:dhcp-4.2.5-82.el7.centos.x86_64                                                                                                                                     5/9 
  清理        : 12:dhcp-4.2.5-58.el7.centos.x86_64                                                                                                                                     6/9 
  清理        : 12:dhclient-4.2.5-58.el7.centos.x86_64                                                                                                                                 7/9 
  清理        : 12:dhcp-common-4.2.5-58.el7.centos.x86_64                                                                                                                              8/9 
  清理        : 12:dhcp-libs-4.2.5-58.el7.centos.x86_64                                                                                                                                9/9 
  验证中      : 12:dhcp-common-4.2.5-82.el7.centos.x86_64                                                                                                                              1/9 
  验证中      : 32:bind-export-libs-9.11.4-26.P2.el7_9.2.x86_64                                                                                                                        2/9 
  验证中      : 12:dhclient-4.2.5-82.el7.centos.x86_64                                                                                                                                 3/9 
  验证中      : 12:dhcp-libs-4.2.5-82.el7.centos.x86_64                                                                                                                                4/9 
  验证中      : 12:dhcp-4.2.5-82.el7.centos.x86_64                                                                                                                                     5/9 
  验证中      : 12:dhcp-common-4.2.5-58.el7.centos.x86_64                                                                                                                              6/9 
  验证中      : 12:dhcp-4.2.5-58.el7.centos.x86_64                                                                                                                                     7/9 
  验证中      : 12:dhcp-libs-4.2.5-58.el7.centos.x86_64                                                                                                                                8/9 
  验证中      : 12:dhclient-4.2.5-58.el7.centos.x86_64                                                                                                                                 9/9 

作为依赖被安装:
  bind-export-libs.x86_64 32:9.11.4-26.P2.el7_9.2                                                                                                                                          

更新完毕:
  dhcp.x86_64 12:4.2.5-82.el7.centos                                                                                                                                                       

作为依赖被升级:
  dhclient.x86_64 12:4.2.5-82.el7.centos                      dhcp-common.x86_64 12:4.2.5-82.el7.centos                      dhcp-libs.x86_64 12:4.2.5-82.el7.centos                     

完毕!
[root@localhost yum.repos.d]# 

猜你喜欢

转载自blog.csdn.net/weixin_51486343/article/details/111035843