在 CentOS 中删除 yum 存储库

在 CentOS 中删除 yum 存储库

Webtatic 有两个 yum 存储库,一个用于 CentOS 5,一个用于 6。两者都可以在 CentOS 6 上运行,但我在从一个切换到另一个时遇到了问题。

(您应该对我为什么要切换感兴趣:生产服务器当前使用前者,但需要只有后者提供的软件包。)

安装一个存储库提供了一个名为的包php54w

rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
yum list php54w

(输出:php54w.x86_64 5.4.15-1.w6 webtatic

在我认为删除了存储库之后,包就消失了:

yum remove webtatic-release-6-3.noarch
yum clean all
yum list php54w

(输出:Error: No matching Packages to list

现在可以安装其他存储库:

rpm -Uvh http://mirror.webtatic.com/yum/centos/5/latest.rpm

但是现在,这个存储库提供了相同的php54w包,尽管该包并不存在于这个存储库中:

yum list --enablerepo=webtatic list php54w

(输出:php54w.x86_64 5.4.15-1.w6 webtatic

在我看来,之前安装的存储库似乎仍在使用。我如何才能真正删除之前安装的存储库?

(感谢,迈克尔·汉普顿)在上述测试中没有安装任何 PHP 包。

这两个存储库具有相同的名称,因为它们都存在于 中/etc/yum.repos.d/webtatic.repo

答案1

Yum 检查了 /etc/yum.repos.d/webtatic.repo 以查看它是否已更改,但当第二个 rpm -Uvh 命令安装此文件时,这种情况似乎没有发生,并且 yum clean all 不会阻止此操作

Webtatic EL6:

-rw-r--r-- 1 root root 805 May 16 22:46 /etc/yum.repos.d/webtatic.repo

Webtatic 5:

-rw-r--r-- 1 root root 834 May 16 22:41 /etc/yum.repos.d/webtatic.repo

这可能是因为 Webtatic 5 包比 6 更早构建。

我可以在构建过程中添加一些可以更新时间戳的内容,但是从来没有计划让 Webtatic 5 支持 CentOS 6,因此如果您尝试在该版本上使用它,可能会得到其他意外结果。

目前的解决方法是强制 Yum 发现文件已更改:

touch /etc/yum.repos.d/webtatic.repo

相关内容