Hat系OSのパッケージ管理に利用するyum。OSの導入ガイド等を参考に環境構築をしていると「インストール・アンインストールに使うんだな。」くらいの認識かもしれませが、実は便利な機能がたくさん用意されています。リポジトリを限定した自動アップデート、依存関係の解決に役立つ構成ファイルの検索など、実践で使える便利な使い方も合わせて紹介します。実践で使えるyumの便利な使い方やエラーへの対応方法yumの設定ファイルについてyumには大きく分けて2つの設定ファイルがあります。yum全体の動作に影響する設定ファイルと、個別のリポジトリに影響する設定ファイルです。yum全体の設定ファイルまずはyum全体に影響する設定ファイルについて解説します。設定ファイルは「/etc/yum.conf」にあります。実際の設定ファイルを例に解説を進めます。31行目:[main]yum全体の設定を示す、mainセクション2行目:cachedir=/var/cache/yumキャッシュファイルの保存場所。1度ダウンロードしたファイルをキャッシュとして保存する。パッケージだけでなく、各パッケージのファイルリストである「filelists.sqlite」や、ミラーサーバのリストなども保存されている。clean」で定期的に削除する必要がある。3行目:keepcache=00の場合、インストールの成功後、ヘッダーとパッケージのキャッシュを保持しない。1の場合、ヘッダーとパッケージのキャッシュを保持。4行目:debuglevel=2デバッグレベルを1から10までで指定します。0だと無効になり、結果しか表示されません。5行目:logfile=/var/log/yum.logログファイルの保存場所。このログファイルを見ればどのパッケージを削除して、何をインストールしたのかわかるため、以前の環境に戻すことも簡単にできます。mysql6行目:distroverpkg=redhat-releaseディストリビュージョンを判断するための指定。ちなみにFedoraの場合はfedora-releaseとなる。7行目:tolerant=1エラーへの耐性(処理を続けるかどうか)を指定するらしいが、現在では動作しないとの指摘もある。8行目:exactarch=10の場合、アップデート時にアーキテクチャを考慮しない。1の場合、「i386用」パッケージがインストールされている時、それより新しいバージョンの「x86_64用」がある場合でも更新しない。9行目:obsoletes=10の場合、obsoletes処理ロジックを無効にする。1の場合、obsoletes処理ロジックを有効にする。obsoletes処理とはパッケージに添付されたスペックファイルを元にファイルを削除する処理。アップデートの際にパッケージ名やライブラリなどの構成が大幅に変更されて、依存関係が更新された場合、元々必要だったが現在のバージョンでは必要のないライブラリ等を削除する。10行目:gpgcheck=10の場合、全リポジトリのGPG署名確認(リポジトリが本物であるか確認する作業)を無効にする。1の場合、全リポジトリのGPG署名確認を有効にする。11行目:plugins=10の場合、全プラグインを無効。1の場合、全プラグインを有効。yumのプラグインは機能の根幹に影響するため、デバック目的以外では有効にすることが推奨されています。12行目:bugtracker_url=http://bugs.centos.org/yum5bug詳細不明。(バグを報告するか、バグを表示する機能でしょうか?)15行目:metadata_expire=1hリポジトリのメタデータを更新する頻度。packagesインストールはするが、アップデートはしないパッケージを指定する。後述の「installonly_limit」と組み合わせて利用する。デフォルトではカーネル系に対して有効なっています。有効になっているパッケージの詳細はyum.conf(5)に解説があります。PAE-debug.installonly_limit=value「installonlypkgs」で指定したパッケージのバージョン違いをいくつまでインストールするか指定する。カーネルなどシステム全体に影響が及ぶものは、前の世代のものを残してインストールする。