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 )
这在我看来像以前安装的存储库仍在使用某种方式。 我怎样才能真正删除以前安装的存储库?
(谢谢,迈克尔汉普顿)上面执行的testing过程中没有安装PHP程序包。
存储库具有相同的名称,因为它们都存在于/etc/yum.repos.d/webtatic.repo 。
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软件包的构build早于6。
我可以在构build过程中添加更新时间戳的东西,但是从来没有计划让Webtatic 5支持CentOS 6,所以如果您尝试在该版本上使用它,您可能会得到其他意想不到的结果。
目前的解决方法是强制Yum发现文件已经改变:
touch /etc/yum.repos.d/webtatic.repo