閉じた環境でのyum update
RHEL5環境で、本番機とテスト機がありなおかつ、外部ネットワークに出れるけど、
「テスト機でアップデートして動作不具合の無かったパッケージしか本番に適用しません!」
と微妙にもにょる事を言われました。
色々思う所があるのですが、言われたらやるしか無い。そして面倒くさいスパイラル(2.0)へ。
結局のところどうするかというと、createrepoというrpmパッケージを利用します。コマンドは以下。
(今回の実験環境はCentOS5.2(Final)ですが、RHELでも同じ手順でおk)
# cd /var/cache/yum/package/updates/ # createrepos ./
こんだけ。
あとはそのディレクトリに repond/ とかいうディレクトリと、ファイルの内容を記載した xml が出力されるので、まとめてどっかにもっていって、yum の設定ファイルを書き換えるだけ。
6/17 25:00追記
ちょいと説明不足だったので補足。/var/cache/yum/package/updates/ というディレクトリは、.rpm ファイルを配置しているディレクトリです。んで、この updates ディレクトリの中で createrepos を実行する事により、 updates ディレクトリの直下に repodata というディレクトリとファイルをマッピングしてあるらしい、各種 xml ファイルを作成します。
んで実際利用するには、updates ディレクトリ以下を丸ごと運搬すればいいです。2回目以降を行いたい場合は、 mv 等で updates ディレクトリをどこかに移動させて、また mkdir して空の updates ディレクトリを作成しておけば以降は同じ手順の繰り返し。