2007年12月6日木曜日

差分ダウンロードは難しいんじゃないだろうか?

相変わらずLinuxネタです。今日はyumのプラグインのご紹介。
yumとはなんぞや?といいますと、Windowsアップデートをもっと強力にしたやつ、ってところでしょうか。Windowsアップデートでもいくらかのサードパーティ製ドライバやパッケージをインストールできますが、yumとはLinuxのインストールDVDに収められているパッケージ+α(たっくさん!)のパッケージを管理できるツールです。Debianでいうaptです。aptより重いですが^^;
で、yumには追加のプラグインをインストールすることで機能を強化することができます。その中で便利そうなものをご紹介。
必須だと思われるのが「yum-fastest-mirror」。パッケージを公開しているサーバはいくつかある(国内外問わず)のですが、その中からできるだけ転送速度の早いミラーを優先的に利用しようとするプラグインです。以前までは国内ミラーなどを自分で設定ファイル書き換えて指定していましたから、だいぶ楽になりますね。
次に、「yum-merge-conf」。RPMでパッケージの更新を行った際、設定ファイルの書式に変更がある場合等は自動的に「.rpmsave」や「.rpmnew」といった拡張子のバックアップファイルを作成します。これをもとに差分を確認して設定ファイルの更新やあるいは巻き戻しを行う必要があるのですが、yumで一気にたくさんのパッケージを更新したときなどは1つ1つ変更を探すのも大変。実際、マージ処理はしなくても問題がない場合が多いですが、気持ち悪いですよね^^;
で、このプラグインをインストールしておくと、インストール時に設定ファイルの変更を行うかスルーするかを尋ねてくれます。どのみちやらなくちゃいけない作業ですし、個人的にはインストール時に聞いてほしいです。300を越えるパッケージの更新のときに10個程度の変更がぁぁぁ、なんて、後から変更のあるファイルを探す方がしんどいですからね。
そして最後に紹介するのが「yum-presto」。このプラグインは、パッケージ全体ではなく、変更のある差分だけを収めたdeltarpmというパッケージを優先的にインストールするプラグインです。差分だけでよければダウンロードするパッケージも少なくて済みます。
ただ、このdeltarpmを提供しているサーバがまだないため、今はこのプラグインを入れていても意味はありません。実現も難しい気がします。直前のパッケージとの差分だけを提供するのだとして、今インストールされテイルパッケージが直前のものかどうかをきちんと判定しないといけなかったりと、手間が掛かりそうですし。
まぁ、気長に待つとしましょう。
今日の紹介はここまで。yum-merge-confはPirutとか使っているときにはどうなるんだろうなぁ・・・。Pirutとかはプラグイン無効にして実行してるのかしら? そんなことはないか。
今はだいぶ改善されたとはいえ、まだaptより重い気がする。つかメモリ食いすぎだよ・・・。メモリ安くなったことだし、やっぱ買っとくべきか!?