Linux / コマンド / rpm - RPMパッケージとインストールデータベースの照会

rpmはRPM形式のパッケージファイルとインストールされたパッケージデータベースを参照・検証・管理します。リポジトリのパッケージと依存関係を一緒に解決する一般的なインストールにはdnfを優先して使用します。

RPM(RPM Package Manager)はパッケージファイルと管理データベースを扱います。-qはインストール済みパッケージを照会し、-qpはRPMファイル自体を照会します。情報表示の-qiとインストールの-iは異なるため、-qを落とさないでください。-Vは管理データベースとファイルを比較しますが、正規の設定変更も差分になるため、侵害とは断定できません。

基本的な文法

rpm [動作] [オプション] パッケージまたはファイル

インストールされている実装とオプションは、配布版によって異なる場合があります。man rpmで現在のシステムの説明を確認してください。

使用例

インストール済みパッケージのバージョン確認

RPMデータベースでインストールの有無とバージョンを確認します。

rpm -q bash

パッケージに含まれるファイルを見る

インストールされたパッケージが提供するパスを確認します。

rpm -ql bash

インストール前のローカルRPM情報を見る

example.rpmは説明用です。手元の実在するRPMのパスに置き換えて、名前・バージョン・CPUアーキテクチャを調べます。情報を表示できても配布元の信頼性を証明したことにはならないため、署名と入手先は別途確認してください。

rpm -qpi ./example.rpm

インストール済みRPMデータベースの照会

rpm -qはローカルRPMデータベースを照会します。出力形式を固定するとスクリプトでパッケージ名を安定して読み取りやすくなります。

rpm -q --qf '%{NAME}\n' bash

bashがインストールされている場合の例示出力:

bash

未インストールなら照会失敗のメッセージと0以外の終了ステータスが返ります。通常のインストール・更新は、リポジトリから依存関係も解決するdnfのパッケージ管理などを使います。照会とシステムを変更する操作を区別してください。

主なオプションと形式

オプション・形式 説明
-q パッケージまたはファイル情報を照会します。
-p -qと組み合わせ、インストール済み項目の代わりにRPMファイルを照会します。
-ql / -qi ファイル一覧またはパッケージ説明を表示します。
-qf パス 該当ファイルを所有するパッケージを探します。
-V インストール済みファイルをデータベースと比較して検証します。

使用する際の注意点

rpm -iはリポジトリ依存性の解決が必要な一般的なインストールには適していません。依存性チェックや署名検証を無視する強制オプションは避けてください。検証出力はパッケージ管理者が変更した設定も表示することがあるため、変更内容を確認する必要があります。配布版ごとにサポートされているRPMオプションを確認してください。

よくある質問

rpm -q と rpm -qp は何が違うのですか?

rpm -qはインストール済みパッケージデータベースを参照し、rpm -qpはローカルRPMファイル自体を参照します。

公式ドキュメント

オプションの正確な動作や実装ごとの違いは、RPM関連の公式ドキュメントで確認できます。