我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

yum安装软件的时候,需要使用rpm -Uvh或者rpm -ivh来识别新的软件来源,那么这些已经识别的软件来源的原理是如何实现的呢?如何对这些repo源进行管理呢?

苏南大叔:yum安装的repo源地址都有哪些?都保存在什么地方? - yum-repo
yum安装的repo源地址都有哪些?都保存在什么地方?(图7-1)

在本篇文章中,苏南大叔主要讲述:yumrepo源的那些事情。

查看本机已经安装的repo

苏南大叔已经通过yum安装过nginx/php/mariadb过了,所以,已经安装过了几个repo源了。那么第一个问题就是,我安装过几个repo了呢?这些repo都在什么地方存放着呢?

可以通过这个命令,来查看本地已有的repo地址。下图中,苏南大叔的机器里面,已经识别了六个repo地址。

yum repolist

苏南大叔:yum安装的repo源地址都有哪些?都保存在什么地方? - yum_repolist
yum安装的repo源地址都有哪些?都保存在什么地方?(图7-2)

本地的repo源存在的文件路径

上述六个repo地址,实际上存放在/etc/yum.repos.d文件夹下面。以文件的形式存放,但是一个repo可能对应着好几个文件。比如,苏南大叔yum安装php的时候,使用了webtatic这个源,实际上是三个文件。

苏南大叔:yum安装的repo源地址都有哪些?都保存在什么地方? - repos_path
yum安装的repo源地址都有哪些?都保存在什么地方?(图7-3)

对于这几个文件,苏南大叔把他们rm掉删除之后,并不是要把这个源删除掉的最好办法。因为这样会留下隐患。

rpm -Uvhrpm -ivh

在这里,苏南大叔建议大家:可以通过rpm --help来查看更多参数,但是rpm的参数很多很复杂,很乱。其中vh参数,是辅助的参数,而Ui才是决定性的作用。U是更新,i是安装。但是,如果本地不存在的话,U也会等同于i。所以,rpm -Uvhrpm -ivh在某种意义上来说,两者是类似公用的。

比如,还是举例webtatic这个源。

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

苏南大叔:yum安装的repo源地址都有哪些?都保存在什么地方? - 004
yum安装的repo源地址都有哪些?都保存在什么地方?(图7-4)

rpm -e

对于rm -rf webtatic*.repo删除掉的文件,用rpm -Uvh 或者 rpm -ivh,无论如何安装,都不会真正安装成功。/etc/yum.repos.d文件夹里面,都不会重新生成对应的文件,这是个悲伤的故事。

这个时候需要使用rpm -e这个真正的移除repo源的功能,修复一下使用rm -rf webtatic*.repo所造成的错误。不过,webtatic的repo地址,还需要查看rpm -Uvh的结果,里面会显示真正的rpm命令认识的名称。

rpm -e webtatic-release-7-3.noarch

苏南大叔:yum安装的repo源地址都有哪些?都保存在什么地方? - 005
yum安装的repo源地址都有哪些?都保存在什么地方?(图7-5)

然后再rpm -Uvh的话,才是真正的安装成功。

苏南大叔:yum安装的repo源地址都有哪些?都保存在什么地方? - 006
yum安装的repo源地址都有哪些?都保存在什么地方?(图7-6)

苏南大叔:yum安装的repo源地址都有哪些?都保存在什么地方? - 007
yum安装的repo源地址都有哪些?都保存在什么地方?(图7-7)

结论

rpmyum,外加一堆糊里糊涂的参数。大家是不是早就晕了呢?苏南大叔在这里,仅仅做个抛砖引玉。更多的参数可以用--help查看。

苏南大叔的yum经验文件,请点击后面的网址查看。https://newsn.net/tag/yum/

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   yum    rpm