このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。

Linux基礎:パッケージの管理(RPM)

パッケージの管理(RPM)

 Linux におけるソフトウェアは、パッケージ という単位で配布・管理されます。その中でも Red Hat 系ディストリビューション(RHEL, Rocky Linux, CentOS, Fedora など)では、RPM(Red Hat Package Manager) 形式が採用されています。RPM パッケージは単なるファイルではなく、ソフトウェア本体・設定ファイル・ライセンス情報・依存関係などをまとめて管理できる仕組みを持っています。

 本記事では、Rocky Linux を題材にして rpm コマンドによるパッケージ管理 を解説します。パッケージのインストール・アップグレード・削除・情報表示など、管理者が知っておくべき操作を体系的に学びます。

1.RPMパッケージとは

1.1. RPMの概要

 RPM(Red Hat Package Manager)は、レッドハット社によって開発されたパッケージ管理方式で、以下のような特徴があります。

項目説明
対応ディストリビューションRHEL, Rocky Linux, Fedora, openSUSE など
パッケージ拡張子.rpm
内容実行プログラム、設定ファイル、ドキュメント、ライセンス情報など
メリット依存関係やバージョン管理を一元化できる。

 RPM パッケージは単独では動作しない場合も多く、他のパッケージに依存することがあります。依存関係を考慮しながら管理することが重要です。

1.2. rpm コマンドの基本書式

rpm [オプション] [パッケージ]

 rpm コマンドは、インストール・アップグレード・削除・情報表示 などを行うための基本コマンドです。

2.rpm コマンドの主な操作

2.1. 主なオプション

オプション説明
-ivh パッケージファイル名新規にパッケージをインストール
-Uvh パッケージファイル名インストール済みパッケージをアップグレード(未インストールなら新規インストール)
-Fvh パッケージファイル名インストール済みのものだけをアップグレード(未インストール時は何もしない)
-e パッケージ名パッケージをアンインストール
-q パッケージ名指定パッケージのインストール有無を確認
-qaインストール済みの全パッケージを一覧表示
-qi パッケージ名指定パッケージの詳細情報を表示

2.2. インストール済みパッケージの確認

[user@rocky9 ~]$ rpm -qa | head -5
libgcc-11.5.0-5.el9_5.x86_64
fonts-filesystem-2.0.5-7.el9.1.noarch
hwdata-0.348-9.18.el9.noarch
xkeyboard-config-2.33-2.el9.noarch
tzdata-2025b-1.el9.noarch

大量に表示されるため、headgrep と組み合わせるのが一般的です。

2.3. パッケージ情報の表示

[user@rocky9 ~]$ rpm -qi vim-common
Name        : vim-common
Epoch       : 2
Version     : 8.2.2637
Release     : 22.el9_6
Architecture: x86_64
Install Date: 2025年08月17日 10時15分25秒
Group       : Unspecified
Size        : 31861155
License     : Vim and MIT
Signature   : RSA/SHA256, 2025年05月14日 03時16分33秒, Key ID 702d426d350d275d
Source RPM  : vim-8.2.2637-22.el9_6.src.rpm
(省略)

 パッケージ名だけでは用途が分かりにくいため、-qi オプションで詳細を確認するのが有効です。

3.パッケージのインストールとアップグレード

3.1. インストール

ダウンロードとインストールは自己責任でお願いいたします。

・「hwloc-libs-2.4.1-5.el9.x86_64.rpm」のダウンロード先

URL:https://dl.rockylinux.org/pub/rocky/9/BaseOS/x86_64/os/Packages/h/hwloc-libs-2.4.1-5.el9.x86_64.rpm

・「htop-3.3.0-1.el9.x86_64.rpm」のダウンロード先

URL:https://dl.fedoraproject.org/pub/epel/9/Everything/x86_64/Packages/h/

ダウンロードしたファイルは、 /root ディレクトリに配置します。

RPM パッケージファイルをダウンロードしたら、-ivh オプションでインストールします。

[user@rocky9 ~]$ su -
パスワード:
[root@rocky9 ~]# rpm -ivh hwloc-libs-2.4.1-5.el9.x86_64.rpm
Verifying...                          ################################# [100%]
準備しています...              ################################# [100%]
更新中 / インストール中...
   1:hwloc-libs-2.4.1-5.el9           ################################# [100%]
[root@rocky9 ~]# rpm -ivh htop-3.3.0-1.el9.x86_64.rpm
警告: htop-3.3.0-1.el9.x86_64.rpm: ヘッダー V4 RSA/SHA256 Signature、鍵 ID 3228467c: NOKEY
Verifying...                          ################################# [100%]
準備しています...              ################################# [100%]
更新中 / インストール中...
   1:htop-3.3.0-1.el9                 ################################# [100%]

3.2. アップグレード

既存のバージョンが古ければ上書きされ、未インストールなら新規インストールされます。
既に存在するものだけを更新したい場合は -Fvh を使用します。

[root@rocky9 ~]# rpm -Uvh htop-3.3.0-1.el9.x86_64.rpm

4.パッケージのアンインストール

パッケージを削除するには、パッケージ名 を指定します。

[root@rocky9 ~]# rpm -e htop

 ここで注意すべき点は、パッケージファイル名(例: htop-3.3.0-1.el9.x86_64.rpm)ではなく、単純なパッケージ名(htop)を指定することです。

まとめ

  • RPM は Red Hat 系 Linux の標準的なパッケージ形式であり、rpm コマンドで操作する。
  • -ivh(インストール)、-Uvh(アップグレード)、-e(削除)、-q(照会)など基本操作を理解することが重要。
  • パッケージ名とパッケージファイル名の違いに注意する。
  • 依存関係の解決は rpm では自動化されないため、通常は dnf コマンド と併用するのが一般的。