yum 没有选择最新的软件包

yum 没有选择最新的软件包

我有一个本地 yum 仓库,里面有一些 rpm。我想升级我所有服务器上的某个软件包。假设现有的软件包是 foo-1.0.x86_64.rpm。我将一个名为 foo-1.2.x86_64 的新软件包放入本地 yum 仓库。现在,当我执行 yum update foo 时,它显示没有标记为更新的软件包。我需要做什么才能让服务器获取更新?

在 yum.conf 中,我尝试指定类似以下内容:[updates] baseurl=

但那没有用。

答案1

首先,您是否createrepo在 yum 存储库上运行过?每当添加新软件包时,您都需要重建元数据。

其次,缓存的超时时间是多少?您可以通过运行 强制清除客户端上的本地化元数据yum clean all,然后尝试再次检查更新。它将从存储库下载所有更新的元数据。

希望这可以帮助!

答案2

我遇到了同样的问题。我做了'yum 全部清理在 rpm 客户端上。我运行了创建仓库' 在 Yum Repo 服务器上。什么都没起作用。

最后,我通过在 Yum 客户端的 /etc/yum.conf 中添加以下行来解决了这个问题:

元数据过期=1m

在我在 Yum 客户端上添加该行之后,yum 命令毫无问题地在本地 Yum 存储库中获取了新的 rpm。

以下命令显示更多信息:

yum.conf 文件

仅供参考。CentOS 5 已注释掉该参数。CentOS 6.2 的值为 90m。

答案3

假设您在放入新的 RPM 后运行了 createrepo 命令,请尝试,yum clean expire-cache它应该会将其接收。

相关内容