はじめに
RPM (RedHatパッケージマネージャー )は、 Red Hatのデフォルトのオープンソースおよびパッケージ管理ユーティリティです。 ( RHEL 、 CentOS およびFedora )。
このツールを使用すると、インストールできます 、更新 、アンインストール 、クエリ 、確認 Unix / Linuxでシステムソフトウェアパッケージを管理します オペレーティングシステム。 .rpmとして知られるRPM パッケージに必要なコンパイル済みソフトウェアプログラムとライブラリを含むファイル。このユーティリティは、 .rpmでビルドされたパッケージでのみ機能します フォーマット。
RPM(RedHat Package Manager)に関するいくつかの事実
- RPMは無料で、 GPLでリリースされます (一般公衆利用許諾契約書 。
- RPMは、インストールされているすべてのパッケージの情報を / var / lib / rpmに保持します。 データベース。
- RPMはパッケージをインストールする唯一の方法です。ソースコードを使用してパッケージをインストールした場合、rpmはそれを管理しません。
RPMコマンドには5つの基本モードがあります
- インストール :RPMパッケージのインストールに使用されます。
- 削除 :RPMパッケージを消去、削除、またはアンインストールするために使用されます。
- アップグレード :既存のRPMパッケージを更新するために使用されます。
- 確認 :RPMパッケージを検証するために使用されます。
- クエリ :任意のRPMパッケージのクエリに使用されます。
1。 RPM署名パッケージを確認する方法
Linuxシステムにパッケージをインストールする前に、パッケージのPGP署名を確認し、その整合性と出所が OKであることを確認してください。 。
次のコマンドを使用します:
例 :(署名を確認 ) puppetと呼ばれるパッケージの署名をチェックするオプション 。
rpm --checksig puppet-3.2.4-3.el6.noarch.rpm
2。 RPMパッケージのインストール方法
rpmソフトウェアパッケージをインストールするには、 -iを指定して次のコマンドを使用します オプション。たとえば、puppet-3.2.4-3.el6.noarch.rpm
というrpmパッケージをインストールするには[root@unixcop]# rpm -ivh puppet-3.2.4-3.el6.noarch.rpm
Preparing... ########################################### [100%]
1:puppet ########################################### [100%]
RPMコマンドとオプション:
-i :パッケージをインストールする
-v :より良い表示のための冗長
-h :パッケージアーカイブが解凍されるときにハッシュマークを出力します。
3。インストールする前にRPMパッケージの依存関係を確認する方法
パッケージをインストールまたはアップグレードする前に、依存関係のチェックを実行するとします。たとえば、次のコマンドを使用して、 BitTorrent-5.2.2-1-Python2.4.noarch.rpmの依存関係を確認します。 パッケージ。パッケージの依存関係のリストが表示されます。
[root@unixcop]# rpm -qpR BitTorrent-5.2.2-1-Python2.4.noarch.rpm
/usr/bin/python2.4
python >= 2.3
python(abi) = 2.4
python-crypto >= 2.0
python-psyco
python-twisted >= 2.0
python-zopeinterface
rpmlib(CompressedFileNames) = 2.6
RPMコマンドとオプション
- -q :パッケージをクエリする
- -p :このパッケージが提供する機能を一覧表示します。
- -R :このパッケージが依存する機能を一覧表示します。
4。依存関係なしでRPMパッケージをインストールする方法
必要なすべてのパッケージがすでにインストールされていて、RPMが愚かであることがわかっている場合は、オプション –nodeps を使用して、これらの依存関係を無視できます。 (依存関係のチェックなし )パッケージをインストールする前に。
[root@unixcop]# rpm -ivh --nodeps BitTorrent-5.2.2-1-Python2.4.noarch.rpm Preparing... ########################################### [100%] 1:BitTorrent ########################################### [100%]
上記のコマンドは、依存関係エラーを無視してrpmパッケージを強制的にインストールしますが、それらの依存関係ファイルが欠落している場合、それらをインストールするまで、プログラムはまったく機能しません。
5。インストールされているRPMパッケージを確認する方法
-qを使用する パッケージ名のオプションは、rpmがインストールされているかどうかを示します。
[root@unixcop]# rpm -q BitTorrent
BitTorrent-5.2.2-1.noarch
6。インストールされているRPMパッケージのすべてのファイルを一覧表示する方法
インストールされているrpmパッケージのすべてのファイルを表示するには、 -qlを使用します (クエリリスト )rpmコマンドを使用します。
[root@unixcop]# rpm -ql BitTorrent
/usr/bin/bittorrent
/usr/bin/bittorrent-console
/usr/bin/bittorrent-curses
/usr/bin/bittorrent-tracker
/usr/bin/changetracker-console
/usr/bin/launchmany-console
/usr/bin/launchmany-curses
/usr/bin/maketorrent
/usr/bin/maketorrent-console
/usr/bin/torrentinfo-console
7。最近インストールされたRPMパッケージを一覧表示する方法
-qaを指定して次のrpmコマンドを使用します (すべてクエリ )オプションを選択すると、最近インストールされたすべてのrpmパッケージが一覧表示されます。
[root@unixcop]# rpm -qa --last BitTorrent-5.2.2-1.noarch Tue 04 Dec 2012 05:14:06 PM BDT pidgin-2.7.9-5.el6.2.i686 Tue 04 Dec 2012 05:13:51 PM BDT cyrus-sasl-devel-2.1.23-13.el6_3.1.i686 Tue 04 Dec 2012 04:43:06 PM BDT cyrus-sasl-2.1.23-13.el6_3.1.i686 Tue 04 Dec 2012 04:43:05 PM BDT cyrus-sasl-md5-2.1.23-13.el6_3.1.i686 Tue 04 Dec 2012 04:43:04 PM BDT cyrus-sasl-plain-2.1.23-13.el6_3.1.i686 Tue 04 Dec 2012 04:43:03 PM BDT
8。インストールされているすべてのRPMパッケージを一覧表示する方法
次のコマンドを入力して、Linuxシステムにインストールされているパッケージのすべての名前を出力します。
[root@unixcop]# rpm -qa initscripts-9.03.31-2.el6.centos.i686 polkit-desktop-policy-0.96-2.el6_0.1.noarch thunderbird-17.0-1.el6.remi.i686
9。 RPMパッケージをアップグレードする方法
RPMパッケージ「–U」をアップグレードする場合 」(アップグレード )オプションが使用されます。このオプションを使用する主な利点の1つは、パッケージの最新バージョンをアップグレードするだけでなく、新しいアップグレードされたパッケージが以前にインストールされたパッケージを実行しない場合に備えて、古いパッケージのバックアップも維持することです。再び使用できます。
[root@unixcop]# rpm -Uvh nx-3.5.0-2.el6.centos.i686.rpm Preparing... ########################################### [100%] 1:nx ########################################### [100%]
10。 RPMパッケージを削除する方法
RPMパッケージをアンインストールするには、たとえば、パッケージ名 nxを使用します。 、元のパッケージ名ではありません nx-3.5.0-2.el6.centos.i686.rpm 。 -e(消去) オプションはパッケージを削除するために使用されます。
[root@unixcop]# rpm -evv nx
11。依存関係のないRPMパッケージを削除する方法
–ノード (依存関係を確認しないでください )オプションは、rpmパッケージをシステムから強制的に削除します。
ただし、特定のパッケージを削除すると、他の動作中のアプリケーションが破損する可能性があることに注意してください。
[root@unixcop]# rpm -ev --nodeps vsftpd
12。どのRPMパッケージに属するファイルをクエリする方法
たとえば、ファイルのリストがあり、どのパッケージがこれらのファイルに属しているかを調べたいとします。たとえば、 -qfを使用した次のコマンド (クエリファイル )オプションはファイルを表示します / usr / bin / htpasswd パッケージhttpd-tools-2.2.15-15.el6.centos.1.i686が所有しています 。
[root@unixcop]# rpm -qf /usr/bin/htpasswd
httpd-tools-2.2.15-15.el6.centos.1.i686
13。インストールされているRPMパッケージの情報を照会する方法
rpmパッケージをインストールしていて、パッケージに関する情報を知りたいとします。次の-qi (クエリ情報 )オプションは、インストールされたパッケージの利用可能な情報を出力します。
[root@unixcop]# rpm -qi vsftpd
Name : vsftpd Relocations: (not relocatable)
Version : 2.2.2 Vendor: CentOS
Release : 11.el6 Build Date: Fri 22 Jun 2012 01:54:24 PM BDT
Install Date: Mon 17 Sep 2012 07:55:28 PM BDT Build Host: c6b8.bsys.dev.centos.org
Group : System Environment/Daemons Source RPM: vsftpd-2.2.2-11.el6.src.rpm
Size : 351932 License: GPLv2 with exceptions
Signature : RSA/SHA1, Mon 25 Jun 2012 04:07:34 AM BDT, Key ID 0946fca2c105b9de
Packager : CentOS BuildSystem <http://bugs.centos.org>
URL : http://vsftpd.beasts.org/
Summary : Very Secure Ftp Daemon
Description :
vsftpd is a Very Secure FTP daemon. It was written completely from
scratch.
14。インストールする前にRPMパッケージの情報を入手してください。
インターネットからパッケージをダウンロードしていて、インストールする前にパッケージの情報を知りたい。たとえば、次のオプション -qip (クエリ情報パッケージ )パッケージsqlbuddyの情報を出力します。
[root@unixcop]# rpm -qip sqlbuddy-1.3.3-1.noarch.rpm
Name : sqlbuddy Relocations: (not relocatable)
Version : 1.3.3 Vendor: (none)
Release : 1 Build Date: Wed 02 Nov 2011 11:01:21 PM BDT
Install Date: (not installed) Build Host: rpm.bar.baz
Group : Applications/Internet Source RPM: sqlbuddy-1.3.3-1.src.rpm
Size : 1155804 License: MIT
Signature : (none)
Packager : Erik M Jacobs
URL : http://www.sqlbuddy.com/
Summary : SQL Buddy â Web based MySQL administration
Description :
SQLBuddy is a PHP script that allows for web-based MySQL administration.
15。インストールされているRPMパッケージのドキュメントを照会する方法
インストールされたパッケージの利用可能なドキュメントのリストを取得するには、オプション -qdfを指定して次のコマンドを使用します (クエリドキュメントファイル )vmstatパッケージに関連するマニュアルページが表示されます。
[root@unixcop]# rpm -qdf /usr/bin/vmstat
/usr/share/doc/procps-3.2.8/BUGS
/usr/share/doc/procps-3.2.8/COPYING
/usr/share/doc/procps-3.2.8/COPYING.LIB
/usr/share/doc/procps-3.2.8/FAQ
/usr/share/doc/procps-3.2.8/NEWS
/usr/share/doc/procps-3.2.8/TODO
16。 RPMパッケージを確認する方法
パッケージを検証すると、パッケージにインストールされているファイルの情報がrpmデータベースと比較されます。 -Vp (パッケージの確認 )はパッケージの検証に使用されます。
[root@unixcop downloads]# rpm -Vp sqlbuddy-1.3.3-1.noarch.rpm
S.5....T. c /etc/httpd/conf.d/sqlbuddy.conf
17。すべてのRPMパッケージを確認する方法
次のコマンドを入力して、インストールされているすべてのrpmパッケージを確認します。
[root@unixcop]# rpm -Va
S.5....T. c /etc/rc.d/rc.local
.......T. c /etc/dnsmasq.conf
.......T. /etc/ld.so.conf.d/kernel-2.6.32-279.5.2.el6.i686.conf
S.5....T. c /etc/yum.conf
S.5....T. c /etc/yum.repos.d/epel.repo
18。 RPMGPGキーをインポートする方法
RHEL / CentOS / Fedoraを確認するには パッケージの場合、 GPGをインポートする必要があります 鍵。これを行うには、次のコマンドを実行します。 CentOS 6をインポートします GPGキー。
[root@unixcop]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
19。インポートされたすべてのRPMGPGキーを一覧表示する方法
インポートしたすべてのGPGを印刷するには システムのキーについては、次のコマンドを使用してください。
[root@unixcop]# rpm -qa gpg-pubkey*
gpg-pubkey-0608b895-4bd22942
gpg-pubkey-7fac5991-4615767f
gpg-pubkey-0f2672c8-4cd950ee
gpg-pubkey-c105b9de-4e0fd3a3
gpg-pubkey-00f97f56-467e318a
gpg-pubkey-6b8d79e6-3f49313d
gpg-pubkey-849c449f-4cb9df30
20。破損したRPMデータベースを再構築する方法
rpmデータベースが破損し、システム上のrpmおよびその他のアプリケーションのすべての機能が停止することがあります。そのため、その時点で、rpmデータベースを再構築し、次のコマンドを使用して復元する必要があります。
[root@unixcop]# cd /var/lib
[root@unixcop]# rm __db*
[root@unixcop]# rpm --rebuilddb
[root@unixcop]# rpmdb_verify Packages