RPM(RPM Package Manager)
コンパイルとインストールを作業を簡略
導入されているパッケージに対応するファイル等のデータベースを保持しており、そこから検索、検証を行えるので、システムの整合性をすぐに調べることが可能
実行可能なプログラム等を配置したバイナリパッケージ (RPM) と、ソースプログラムを収録したソースパッケージ (SRPM) がある
依存関係があり、必要なパッケージがインストール済でないと、目的のパッケージもインストールできない
パッケージには正当性をしめす、署名やダイジェストが含まれており、安全のため検証することは必須
パッケージファイル名の構成(kernel-3.10.0-693.11.1.el7.x86_64)
- kernel
- パッケージ名
- 3.10.0
- バージョン
- 693.11.1.el7
- リリース番号(ビルド番号)
- x86_64
- アーキテクチャ(64 bit)
- その他
- ソースパッケージの場合には src
- アーキテクチャに依存しないものは noarc
- kernel
インポートされているGPG公開鍵の確認
# rpm -qai gpg-pubkey*
GPG 公開鍵のインポート
# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-Testing-7
コミュニティ
- IUS Community
- http://iuscommunity.org/
- Red Hat とそのクローン向けの RPM パッケージを提供しているコミュニティ
- epel 必須
- IUS Community
インストールされたパッケージ表示
# rpm -qa
パッケージによってインストールされたファイル表示
全て
# rpm -ql httpd
設定ファイルのみ
# rpm -qc httpd
changelog 確認
# rpm -q --changelog httpd
パッケージの依存関係確認
# rpm -qR httpd
ファイルがどのパッケージに含まれているか
# rpm -qf /usr/bin/w procps-3.2.8-30.el6.x86_64
パッケージ情報表示
# rpm -qi httpd Name : httpd Relocations: (not relocatable) Version : 2.2.15 Vendor: CentOS Release : 39.el6.centos Build Date: Thu 16 Oct 2014 11:49:26 PM JST Install Date: Sat 20 Jun 2015 11:47:54 PM JST Build Host: c6b9.bsys.dev.centos.org Group : System Environment/Daemons Source RPM: httpd-2.2.15-39.el6.centos.src.rpm Size : 3085394 License: ASL 2.0 Signature : RSA/SHA1, Sat 18 Oct 2014 05:02:19 AM JST, Key ID 0946fca2c105b9de Packager : CentOS BuildSystem <http://bugs.centos.org> URL : http://httpd.apache.org/ Summary : Apache HTTP Server Description : The Apache HTTP Server is a powerful, efficient, and extensible web server.
rpmパッケージ内のファイルを全て展開
# rpm2cpio target.rpm | cpio -idv
パッケージの一覧表示
# rpm2cpio target.rpm | cpio -t or # rpm -qpl target.rpm
rpmファイルから特定のファイルのみ展開
# rpm2cpio target.rpm | cpio -idv targetfilename
テスト実行
# rpm -i --test hogehoge.rpm
パッケージ削除
# rpm -e pachage.rpm