RPM 【RPM Package Manager】 Red Hat Package Manager
概要
RPM(RPM Package Manager)とは、米レッドハット(Red Hat)社が開発した、ソフトウェアのパッケージ管理システム。システムの操作を行うコマンド(rpm)およびパッケージのファイル形式(.rpmファイル)の名称でもある。同社のRed Hat Linuxのために開発されたパッケージ管理方式で、ソフトウェアを一つのファイルにまとめて配布するためのファイル形式の仕様と、パッケージをシステムに導入する管理ツールで構成される。
RPM形式のパッケージファイル(標準のファイル拡張子は.rpm)は複数のファイルやディレクトリをcpio形式のアーカイブファイルにまとめた形となっている。内部にはパッケージについての情報が書かれた独自のspec形式のファイル、ソフトウェアの本体であるバイナリファイルやソースコードなどが格納されている。
specファイルにはパッケージの名前や説明、種類、バージョン番号、ライセンス情報、開発元、公式サイトのURL、パッケージ作成に用いたツール、他のパッケージとの依存関係などの情報を記述した部分と、OSに導入するための手順や実行すべきシェルスクリプトなどを記述したスクリプト部分が格納されている。rpmコマンドはスクリプト部の内容を読み込んで自動的に実行することでソフトウェアを導入する。
OSのRPMシステムは内部にBarkeley DB形式のデータベースを持っており、導入されたソフトウェアについての情報を一元的に管理している。RPMを通じて導入されたソフトウェアの一覧を表示したり、導入済みのソフトウェアを指定して削除したりすることができる。
RPM自体には依存関係を解決する(動作に必要なパッケージを自動的に取り寄せて導入する)機能はないため、YumやDNF(Dandified Yum)などRPMを管理する高機能なパッケージマネージャ(メタパッケージ管理ツール)などを用いることもある。
RPMの仕様やツールはGPLに基づいてオープンソースとして公開されており、Red Hat社以外のディストリビューションでも広く採用されている。パッケージ管理にRPMを採用しているディストリビューションをRPM系と総称することもある。当初の名称は “Red Hat Package Manager” だったが、様々なシステムへの広まりを受けて “RPM Package Manager” に改称(RPMの略称は同じ)された。