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

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

在两台服务器上运行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它似乎试图find匹配的最新软件包,而不是我想要的特定软件包。

 ... ---> 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 ... 

有没有办法只安装我想要的包,没有新的东西?

你可以做的另一件事可以比以前的答案更多的工作,但也可以手动下载包,然后运行

 # yum localinstall /path/package.rpm 

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

我相信下面会做你想做的,因为默认情况下,yum不会让你安装一个发布以下可用:

yum安装yum-versionlock

接着:

yum –allow-downgrade install bind-libs-9.8.2-0.17.rc1.el6_4.5.x86_64

并在将来的软件包更新到您的系统的情况下维护此版本:

yum versionlock bind-libs