PR
 概要  
Linuxのソフトウエア・パッケージ管理方式に基づいたRPM(Red Hat package manager)パッケージを管理する。root権限でのみ利用可能なコマンドで,RPMパッケージのインストール,アップデート,アンインストール,検索などができる。RPMパッケージでは,インストール/アップデート/アンインストールの際に依存関係のあるパッケージを調べてから各動作を実行する。そのため,各ソフトウエア間の依存関係等を意識することなくソフトウエアのインストールなどが可能となる。ここでは,インストール,アップデート,アンインストール,検索に関するオプションを中心に解説する。

 構文  
rpm {[-i | --install] | [-U | --upgrade] | [-F | --freshen]} [インストール・オプション] パッケージ・ファイル名

または

rpm [-e | --erase] [アンインストール・オプション] パッケージ・ファイル名

または

rpm [-q | --query] [選択オプション] [検索オプション] パッケージ・ファイル名

または

rpm [-V | --verify] [選択オプション] [検査オプション] パッケージ・ファイル名

または

rpm [-? | --help]

または

rpm [--version]


 利用環境  
Red Hat Enterprise Linux ○(rpm-4.3.3-18_nonptlで確認)

 オプション 
-i | --installRPMパッケージをインストールする。
-U | --upgradeRPMパッケージをアップグレードする。すでにパッケージがインストールされている場合,そのパッケージを新しいバージョンにアップグレードする。パッケージがインストールされていない場合,新たにそのパッケージをインストールする。
-F | --freshenRPMパッケージをアップグレードする。すでにパッケージがインストールされている場合,そのパッケージを新しいバージョンにアップグレードする。パッケージがインストールされていない場合,何も行わずに処理を終了する。
-e | --eraseRPMパッケージをアンインストールする。
-q | --queryRPMパッケージのパッケージ情報を表示する。
-V | --verifyRPMパッケージを検査する。インストール後にパッケージが改ざんされていないかなどを調べる場合に利用できる。
-? | --helpコマンドの使用方法を表示する。
--versionコマンドのバージョン情報を表示する。
パッケージ・ファイル名対象となるパッケージ・ファイル名を指定する。ftpやhttpを使ったURL形式でファイルを指定することも可能である。


 インストール・オプション 

インストール/アップデート時に指定するオプションについて,主に使用するものに絞って解説する。

--allfilesパッケージ内にある全てのmissingokファイルについて,ファイルの有無に関わらずパッケージをインストール/アップブレードする。missingokファイルとは,特に存在しなくても問題ないとされているファイルで,パッケージのインストール後にそのファイルを削除しても検証ではエラーとされない。
--force強制的にファイルを上書きしてパッケージをインストール/アップグレードする。指定したパッケージよりも新しいバージョンのパッケージが既にインストールされているような場合や,既にインストールされている別のパッケージのファイルを書き換えてしまうような場合でも,強制的にパッケージをインストール/アップグレードする。「--oldpackage」「--replacefiles」「--replacepkgs」といったオプションの代わりにこのオプションを指定することができる。
-h | --hush処理の進行状況を「#」記号で表示する。
--nodepsパッケージのインストール/アップグレードを行う際,依存関係を無視する。通常パッケージの依存関係のチェックを行った上で処理をするが,このオプションを指定すると,依存関係を全て無視し,パッケージをインストール/アップグレードする。
--oldpackage指定したパッケージよりも新しいバージョンのパッケージが既にインストールされているような場合,古いパッケージでダウングレードする。このオプションの変わりに「--force」オプションを指定することもできる。
--replacefiles既にインストールされている他のパッケージ・ファイルの内容を上書きする必要がある場合でも,強制的に指定したパッケージをインストール/アップグレードする。このオプションの変わりに「--force」オプションを指定することもできる。
--replacepkgsインストールするパッケージを複数指定した際,指定したパッケージのうち一つまたは複数のパッケージが既にインストールされている場合でも,指定した全てのパッケージを再度インストールする。このオプションを指定しないと,指定したパッケージの中に既にインストールされているパッケージがあった場合,全てのパッケージについて処理を行わない。このオプションの変わりに「--force」オプションを指定することもできる。
--testパッケージのインストール/アップグレードはせずに,テストのみ実行する。インストール時に既にパッケージがインストールされている場合や,インストール/アップグレード時に依存関係に問題があるような場合などには,その内容を表示する。
-v | --verbose操作対象のパッケージ名を表示する。


 アンインストール・オプション 

パッケージのアンインストール時に指定するオプションについて,主に使用するものに絞って解説する。

--nodepsパッケージのアンインストールする際,依存関係を無視する。通常パッケージの依存関係のチェックを行った上で処理をするが,このオプションを指定すると依存関係を全て無視し,パッケージをアンインストールする。
--testパッケージを実際にはアンインストールせず,テストのみ実行する。指定したパッケージがインストールされていない場合や,アンインストール時に依存関係に問題があるような場合などには,その内容を表示する。


 選択オプション 

パッケージについて検索または検査する場合のオプションについて,主に使用するものに絞って解説する。

-a | --allインストールされている全てのパッケージを選択する。
-f ファイル名 | --file ファイル名指定したファイルを所有するパッケージを選択する。
-p パッケージ・ファイル | --package パッケージ・ファイルインストールされていないRPMパッケージを選択する。検索したいパッケージがインストールされていない場合でも,RPMパッケージ・ファイルを指定することで,そのパッケージを検索することが可能となる。パッケージ・ファイルには,ftpやhttpを使ったURL形式も指定できる。


 検索オプション 

-qオプションを指定してパッケージを検索する際に表示する内容を指定するためのオプションについて,ここでは主に使用するものに絞って解説する。

-c | --configfiles検索したパッケージの設定ファイルのみを表示する。
-d | --docfiles検索したパッケージのドキュメント・ファイルのみを表示する。
-i | --info検索したパッケージの名前,バージョン情報,リリース日,インストール日などの詳細情報を表示する。
-l | --list検索したパッケージのパッケージ内にある全ファイルを表示する。


 検査オプション 

パッケージの検査をする際に指定するオプションについて,ここでは主に使用するものに絞って解説する。

--nodeps依存関係に関する検査をしない。
--nodigestパッケージのヘッダーやダイジェスト値に関する検査をしない。
--nofilesパッケージ内のファイル属性に関する検査をしない。
--nosignatureパッケージの署名に関する検査をしない。
--nomd5パッケージのMD5に関する検査をしない。
--nosizeパッケージのサイズに関する検査をしない。
--nouserパッケージの所有者に関する検査をしない。
--nogroupパッケージの所属グループに関する検査をしない。
--nomodeパッケージのパーミッションに関する検査をしない。


 使用例1:RPMパッケージがインストールされているかを調べる(クリックで詳細表示)  
rpm -q パッケージ・ファイル名

 使用例2:RPMパッケージをインストールする(クリックで詳細表示)  
rpm -i パッケージ・ファイル名