【Linux入門】RPMパッケージ
パッケージの管理(CentOS)
パッケージ管理の重要性
- CentOSや他のRed Hat系ディストリビューションでは、パッケージ管理がシステムの構成やアプリケーションの管理において中心的な役割を果たします。
- RPM(Red Hat Package Manager)は、CentOSで利用されるパッケージ管理システムの一つです。
RPMパッケージとは
RPMの役割
- RPMは、ソフトウェアや関連するファイルを単一のファイルにまとめ、インストール、アップグレード、削除などの操作を容易にします。
.rpm
という拡張子のパッケージファイルが使用されます。
パッケージ名とパッケージファイルの違い
パッケージ名
- パッケージ名は、インストールするソフトウェアやライブラリの名前を指します。例えば、
httpd
はApache HTTP Serverのパッケージ名です。
パッケージファイル
- パッケージファイルは、実際にインストールされる
.rpm
ファイルを指します。例えば、httpd-2.4.6-90.el7.centos.x86_64.rpm
はApache HTTP ServerのRPMパッケージファイルです。
rpmコマンド
インストール関連
-ivh パッケージファイル名
: パッケージをインストール-Uvh パッケージファイル名
: パッケージをアップグレード
アンインストール関連
-e パッケージ名
: パッケージをアンインストール
クエリ関連
-q パッケージ名
: パッケージがインストールされているか確認-qa パッケージ名
: インストールされているすべてのパッケージを表示-qi パッケージ名
: パッケージの詳細情報を表示
rpm
コマンドの主なオプション
オプション | 説明 |
---|---|
-i or --install | パッケージを新規にインストール |
-U or --upgrade | パッケージをアップグレード |
-e or --erase | パッケージをアンインストール |
-q or --query | インストール済みパッケージの情報表示 |
-qa | インストール済みすべてのパッケージを表示 |
-qi | パッケージの詳細情報を表示 |
-ivh | インストール時に進捗情報と詳細を表示 |
-Uvh | アップグレード時に進捗情報と詳細を表示 |
--nodeps | 依存関係のチェックをスキップ |
rpm
コマンドの主なオプションこれらのオプションを組み合わせて使用することで、rpm
コマンドを効果的に利用できます。
インストール済みRPMパッケージを表示する例
$ rpm -qa
libpciaccess-0.14-1.el7.x86_64
jomolhari-fonts-0.003-17.el7.noarch
gnome-shell-extension-places-menu-3.28.1-17.el7_9.noarch
compat-exiv2-026-0.26-2.el7.x86_64
geoclue2-libs-2.4.8-1.el7.x86_64
mozilla-filesystem-1.9-11.el7.x86_64
pyparted-3.9-15.el7.x86_64
gnome-getting-started-docs-3.28.2-1.el7.noarch
urw-base35-bookman-fonts-20170801-10.el7.noarch
libvirt-daemon-driver-storage-iscsi-4.5.0-36.el7_9.5.x86_64
(省略)
パッケージの説明を表示する例
$ rpm -qi パッケージ名
以下は、「vim-common」パッケージの説明です。
$ rpm -qi vim-common
Name : vim-common
Epoch : 2
Version : 7.4.629
Release : 8.el7_9
Architecture: x86_64
Install Date: 2023年12月31日 17時34分14秒
Group : Applications/Editors
Size : 22155744
License : Vim
Signature : RSA/SHA256, 2020年12月18日 05時37分20秒, Key ID 24c6a8a7f4a80eb5
Source RPM : vim-7.4.629-8.el7_9.src.rpm
Build Date : 2020年12月16日 01時44分28秒
Build Host : x86-01.bsys.centos.org
Relocations : (not relocatable)
Packager : CentOS BuildSystem <http://bugs.centos.org>
Vendor : CentOS
URL : http://www.vim.org/
Summary : The common files needed by any version of the VIM editor
Description :
VIM (VIsual editor iMproved) is an updated and improved version of the
vi editor. Vi was the first real screen-based editor for UNIX, and is
still very popular. VIM improves on vi by adding new features:
multiple windows, multi-level undo, block highlighting and more. The
vim-common package contains files which every VIM binary will need in
order to run.
If you are installing vim-enhanced or vim-X11, you'll also need
to install the vim-common package.
インストールされているかどうかを確認する例
$ rpm -q パッケージ名
下の例では、httpdパッケージはインストールされていませんが、postfixパッケージはインストールされていることが確認できます。
$ rpm -q httpd
パッケージ httpd はインストールされていません。
$ rpm -q postfix
postfix-2.10.1-9.el7.x86_64
コマンドでパッケージをインストールする例
rpmコマンドで「Htop」をインストールする例を紹介します。
Htop とは、top の置き換えを目標に設計されたプロセス ビューアーで、リアルタイムでシステム監視を行うためのテキストモードアプリケーションです。デフォルトでは、プロセスはCPU使用率の順に並べられます。
ここでは、「htop-2.2.0-3.el7.x86_64.rpm」をインストールします。
「htop-2.2.0-3.el7.x86_64.rpm」で検索するとダウンロードができるサイトがいくつか見つかります。そこから、ダウンロードします。
「https://rpmfind.net/linux/rpm2html/search.php?query=htop(x86-64)」などから「htop-2.2.0-3.el7.x86_64.rpm」をダウンロードします。
ダウンロードした「htop-2.2.0-3.el7.x86_64.rpm」ファイルを「/root」ディレクトリに配置します。
$ sudo mv Downloads/htop-2.2.0-3.el7.x86_64.rpm /root
[sudo] user01 のパスワード:
rpmコマンドで「-ivh」 オプションを指定してHtopをインストールします。
$ su -
パスワード:
最終ログイン: 2024/02/03 (土) 15:00:32 JST日時 pts/0
# rpm -ivh htop-2.2.0-3.el7.x86_64.rpm
警告: htop-2.2.0-3.el7.x86_64.rpm: ヘッダー V3 RSA/SHA256 Signature、鍵 ID 352c64e5: NOKEY
準備しています... ################################# [100%]
更新中 / インストール中...
1:htop-2.2.0-3.el7 ################################# [100%]
パッケージをアンインストールする例
$ su -
パスワード:
最終ログイン: 2024/02/06 (火) 01:04:27 JST日時 pts/1
# rpm -e htop
まとめ
このように、rpmコマンドはパッケージの管理やシステムの構成に関するさまざまな作業をサポートします。それぞれのオプションを利用して必要な操作を行い、システムを効果的に管理することができます。