Linuxのパッケージ管理にはさまざまな方法がありますが、その中でもRPM(Red Hat Package Manager)はRed Hat系ディストリビューション(RHEL、CentOS、Fedoraなど)で広く使用されています。rpmコマンドを活用すれば、パッケージのインストール、アンインストール、情報取得などが簡単に行えます。本記事では、rpmコマンドの基本的な使い方から応用まで詳しく解説していきます。
rpmコマンドとは?
rpmコマンドは、RPMパッケージを管理するためのコマンドラインツールです。主に以下のような用途で使用されます。
- パッケージのインストール
- パッケージのアップグレード
- パッケージの削除
- パッケージ情報の取得
- 依存関係のチェック
RPM形式のパッケージは.rpmという拡張子を持ち、バイナリやソースコード、メタデータが含まれています。
rpmコマンドの基本的な使い方
パッケージのインストール
RPMパッケージをインストールするには、-iオプションを使用します。
rpm -i パッケージ名.rpm
例えば、sample.rpm をインストールする場合は以下のように実行します。
rpm -i sample.rpm
パッケージのアップグレード
既存のパッケージを新しいバージョンにアップグレードするには、-Uオプションを使用します。
rpm -U パッケージ名.rpm
-Uオプションは、古いバージョンがあれば削除し、新しいバージョンをインストールします。
パッケージの削除
不要なパッケージを削除するには、-eオプションを使用します。
rpm -e パッケージ名
パッケージ名には.rpmを含めず、パッケージの名前のみを指定します。
インストール済みパッケージの確認
システムにインストールされているパッケージの一覧を取得するには、以下のコマンドを使用します。
rpm -qa
特定のパッケージがインストールされているか確認するには、以下のように検索できます。
rpm -qa | grep パッケージ名
パッケージ情報の表示
特定のパッケージの詳細情報を表示するには、-qiオプションを使用します。
rpm -qi パッケージ名
パッケージのインストールファイルの一覧を取得するには、-qlオプションを使用します。
rpm -ql パッケージ名
rpmコマンドの応用
依存関係のチェック
RPMパッケージには他のライブラリやパッケージに依存するものがあります。その依存関係を確認するには、-qRオプションを使用します。
rpm -qR パッケージ名
パッケージの検証
パッケージが改変されていないか検証するには、-Vオプションを使用します。
rpm -V パッケージ名
パッケージの署名確認
RPMパッケージの署名を確認するには、--checksigオプションを使用します。
rpm --checksig パッケージ名.rpm
手動でのパッケージ作成
RPMパッケージを手動で作成するには、rpmbuildコマンドを使用します。以下のような手順でパッケージを作成できます。
rpmbuild用のディレクトリを作成- SPECファイルを作成
rpmbuild -baでビルド
詳細は別記事で解説します。
rpmコマンドとdnf/yumの違い
RPMベースのディストリビューションでは、dnf(またはyum)が推奨されることが多いですが、rpmコマンドとはどのような違いがあるのでしょうか。
| コマンド | 特徴 |
|---|---|
rpm | 個別のパッケージを管理する低レベルのコマンド |
dnf/yum | 依存関係を自動解決する高レベルのパッケージ管理ツール |
例えば、rpmでパッケージをインストールする際には依存関係を手動で解決する必要がありますが、dnfやyumでは自動で依存関係を解決してくれます。
まとめ
rpmコマンドは、Red Hat系ディストリビューションで重要なパッケージ管理ツールです。基本的な使い方を覚えておくと、より柔軟にパッケージ管理ができるようになります。特に、rpmを利用する場面として以下のようなものが挙げられます。
- 特定のRPMパッケージを手動で管理したい場合
- 依存関係の詳細を確認したい場合
- RPMパッケージの整合性を検証したい場合
また、通常のパッケージ管理にはdnfやyumを使用するのが便利なので、目的に応じて適切なコマンドを使い分けましょう。
