web-dev-qa-db-ja.com

CentOSに特定のパッケージバージョンをインストールする

実稼働WebサーバーとバックアップWebサーバーの2つのWebサーバーがあります。

2台のサーバーで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
...

必要なパッケージのみをインストールし、新しいものは何もインストールしない方法はありますか?

2
Nathan McCoy

以前の回答よりも少し手間がかかる可能性がありますが、同様に機能するもう1つの方法は、パッケージを手動でダウンロードしてから実行することです。

# yum localinstall /path/package.rpm

ダウンロードした特定のパッケージをインストールしようとします。

3
Tomas

デフォルトではyumは利用可能なものより下のリリースをインストールできないので、以下はあなたが望むことをするだろうと私は信じています:

yum install yum-versionlock

その後:

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

システムの将来のパッケージ更新の場合にこのバージョンを維持するには、次のようにします。

yum versionlock bind-libs

5
Ruairi