RPM (RPM Package Manager) は、Red Hat によって開発されたパッケージ管理システムです。RPM は、多くの Linux ディストリビューションで広く利用されています。
- パッケージは一般的に cpio 形式でアーカイブされますが、特定の実装によっては異なるフォーマットを使用する場合もあります。
- RPM データベースには、一般的に Berkeley DB が使用されますが、他のデータベースシステムが採用されることもあります。
- パッケージの詳細は RPM spec ファイルに記述されます。これには、パッケージのビルド手順や依存関係、ファイルの配置場所などが含まれます。また、インストール時に実行されるスクリプトも含まれることがありますが、必須ではありません。
- RPM は、バイナリパッケージのインストールだけでなく、ソースコードからのパッケージ作成もサポートしています。
- RPM は主に C 言語で実装されていますが、さまざまな言語バインディングも提供されています。これには、C、Python、Ruby などが含まれます。
- RPM コマンドのフロントエンドとして Yum/DNF が使用されます。DNF は Yum の後継となります。
RPM コマンドの書式は以下の通りです。
[root@centos ~]# rpm [ option { argument } ]
RPM コマンドのオプションは以下の通りです。
オプション | オプションの引数 | 内容 |
---|---|---|
-e | パッケージを削除します。 | |
-i | パッケージをインストールします。 | |
-q | パッケージを照会します。 | |
-F | パッケージをアップグレードしますが、システムに同じパッケージが存在しない場合は、インストールを行いません。 | |
-U | パッケージをアップグレードします。システムに同じパッケージが存在しない場合は、通常のインストールを行います。 | |
-V | パッケージを検証します。 | |
-l | パッケージに含まれるファイルを表示します。-q と併用します。 | |
-h | インストールの進捗状況を表示します。-i, -F, -U と併用します。 | |
-v | 詳細情報を表示します。-e, -i, -q, -F, -U と併用します。 | |
-a | インストール済みの全パッケージを表示します。-q, -V と併用します。 | |
-f | { file } | 指定したファイルを含むパッケージを表示します。-q と併用します。 |
-p | { package file } | 指定したパッケージファイルの情報を表示します。-q と併用します。 |
–root | { directory } | 作業ディレクトリを指定します。 |
–nodeps | 依存関係を無視します。-e, -i などと併用します。 | |
–prefix | { directory } | パッケージをインストールするディレクトリを指定します。-i と併用します。 |
–relocate | { old directory = new directory } | インストール済みのパッケージを、ディレクトリを変更して再インストールします。-i と併用します。 |
-changelog | { package } | パッケージの更新履歴を表示します。-q と併用します。 |
LPIC RPM コマンド