CentOSのRPMでOSのバージョン間違い

新しいサーバをZABBIXで監視に追加するためにZABBIXのリポジトリインストール用のRPMをインストールしようと思ったら、見慣れないエラーが出てインストールできなかった。

ZABBIX-JPのyumリポジトリ利用方法 | ZABBIX-JP

# wget http://repo.zabbix.jp/relatedpkgs/rhel6/i386/zabbix-jp-release-6-6.noarch.rpm
# rpm -ivh zabbix-jp-release-6-6.noarch.rpm
警告: /var/tmp/rpm-xfer.eXQBuk: ヘッダ V4 DSA signature: NOKEY, key ID f32904ff
エラー: 依存性の欠如:
	rpmlib(FileDigests) <= 4.6.0-1 は zabbix-jp-release-6-6.noarch に必要とされています
	rpmlib(PayloadIsXz) <= 5.2-1 は zabbix-jp-release-6-6.noarch に必要とされています

rpmlibというパッケージがインストールされて無いことが原因かと思たののでyum searchで調べてみたけども該当するようなパッケージは見つからない。
ググって調べてみてもなんだか要領を得ない。

なんだろうと思って、ふとOSのバージョンを確認したら。

# cat /etc/redhat-release
CentOS release 5.8 (Final)

CentOS5系だった・・・
新しく導入したサーバだからCentOS6系だと思い込んで、CentOS6系用のRPMをインストールしようとしていた。
ただの思い込みだったわけだ。

# rpm -ivh http://repo.zabbix.jp/relatedpkgs/rhel5/i386/zabbix-jp-release-5-6.noarch.rpm

CentOS5系用のパッケージをインストールして解決。

自分で調達したものではなかったので気づかなかったという。

rpmコマンドのエラーではOSのバージョンが違うとかは特に出ないようになってるんだな。
似たようなエラーが出た場合はRPMパッケージの対応OSが合っているか確認してみよう。

CentOS6系のSRPMSの置き場所

CentOS6.3用にpostfixのsrpmをダウンロードしようと思って、いつも使っている理研のミラーの中を探してたんだけど、なかなかSRPMSというフォルダが見つからない。

前のバージョンのところにでもあるのかと思って、別なところを探していたら
http://ftp.riken.jp/Linux/centos/6.2/os/SRPMS/Sources_README

All srpms are now hosted in vault.centos.org

Sources for this repo can be found at :
http://vault.centos.org/6.2/os/Source/

と書いてある、ページを見つけた。

どうも、ソースはミラーサイトではなく、vault.centos.orgに置くようになったみたいだ。

ということで、CentOS6.3のsrpmは次のURLからダウンロードできることがわかった。
http://vault.centos.org/6.3/os/Source/SPackages/