yumの$releaseverについて
理解しておらず恥をかいてしまったのでメモ。
$releasever This will be replaced with the value of the version of the package listed in distroverpkg. This defaults to the version of
‘redhat-release’ package.
設定項目distroverpkgで指定されたパッケージのバージョン番号を使うとのこと。
distroverpkg The package used by yum to determine the "version" of the distribution. This can be any installed package. Default is ‘red-
hat-release’. You can see what provides this manually by using: "yum whatprovides redhat-release".
デフォルトだとredhat-releaseを使うとのこと。
パッケージ情報は"yum whatprovides redhat-release"を実行すれば知ることが出来るという情報もありますね。
$ grep distroverpkg /etc/yum.conf distroverpkg=redhat-release
デフォルトのままです。
$ yum whatprovides redhat-release Loaded plugins: fastestmirror, priorities 4808 packages excluded due to repository priority protections 10:centos-release-5-7.el5.centos.x86_64 : CentOS release file Repo : base Matched from: Other : redhat-release 10:centos-release-5-7.el5.centos.x86_64 : CentOS release file Repo : installed Matched from: Other : Provides-match: redhat-release
redhat-releaseを提供するパッケージはcentos-releaseという事なので、このパッケージのバージョン番号を調べます。
$ yum info centos-release Loaded plugins: fastestmirror, priorities 4808 packages excluded due to repository priority protections Installed Packages Name : centos-release Arch : x86_64 Epoch : 10 Version : 5 Release : 7.el5.centos Size : 40 k Repo : installed Summary : CentOS release file License : GPL Description: CentOS release files
というわけで、$releaseverには"5"が使われる様ですね。
ちなみに、yumを使う必要はなく、rpmコマンド一回で知ることも出来ますね。
$ rpm -q --whatprovides /etc/redhat-release --qf '%{version}\n' 5
yumコマンドの--releaseverオプションで実行時に指定出来るという情報を見かけたのですが、これはCentOSの5.7で使われているyumでは使えないのでしょうか?追加パッケージが必要という話でしょうか?よく分かりません。
という事で、激しく初歩的な知識が欠けている事が露呈してしまいました…。まあ、めげずに適当に捨てる所は捨ててふらふらいきましょうかね。