在 CentOS 中安装特定软件包版本

在 CentOS 中安装特定软件包版本

我有两个网络服务器,一个生产网络服务器和一个备份网络服务器。

rpm -qa在两台服务器上运行后,我注意到一些包差异。

好像有人yum update过去在生产服务器上运行过,但没有在备份 Web 服务器上运行它。

我想在备份 Web 服务器上安装一些非常具体的软件包。

例如 :yum install bind-libs-9.8.2-0.17.rc1.el6_4.5.x86_64

如果我运行,yum install bind-libs-9.8.2-0.17.rc1.el6_4.5.x86_64它似乎会尝试找到匹配的最新包,而不是我想要的特定包。

...
---> Package bind-utils.x86_64 32:9.8.2-0.17.rc1.el6_4.4 will be updated
---> Package bind-utils.x86_64 32:9.8.2-0.17.rc1.el6_4.6 will be an update
...
======================================================================================
 Package           Arch          Version                          Repository      Size
======================================================================================
Updating for dependencies:
 bind-libs         x86_64        32:9.8.2-0.17.rc1.el6_4.6        updates        878 k
...

有没有办法只安装我想要的软件包而不安装任何更新的软件包?

答案1

您可以做的另一件事可能比以前的答案要多一些工作,但效果也很好,那就是手动下载软件包,然后运行

# yum localinstall /path/package.rpm

这应该尝试安装您下载的特定包。

答案2

我相信下面的操作可以满足您的要求,因为默认情况下 yum 不会让您安装低于可用版本的版本:

yum 安装 yum-versionlock

进而:

yum --allow-downgrade 安装 bind-libs-9.8.2-0.17.rc1.el6_4.5.x86_64

并在您的系统将来需要软件包更新时保留此版本:

yum 版本锁定 bind-libs

相关内容