この記事は会員限定です。会員登録すると全てご覧いただけます。
RPMコマンドは、Red Hat系ディストリビューションのLinuxで特有のパッケージ配布形態だ。プログラムなどを容易にインストールや削除することが可能であり、makeなどが必要なくLinux活用のハードルを低くしてくれる。
RPMコマンドのオプションには、インストールや削除を行う以外にもたくさんのものが用意されており、覚えておくと便利なものが多い。ここでは、知っておくと便利なものを厳選して紹介しよう。
インストールは行わず、テストのみを行う。パッケージが正常であるかチェックする場合に便利だろう。
# rpm -i --test xxxxxx.rpm
複数のパッケージをインストールする場合には、拡張子rpmのファイルを続けて記述すればよい。ただし、ワイルドカード(「*」など)も利用できるため、こちらのほうが便利かもしれない。
# rpm -i xxxxxx.rpm xxxxxx.rpm # rpm -i *.rpm
通常のインストールには、「-ivh」オプションで指定する。「i」はインストール、「v」は詳細な情報出力、「h」がインストールの進行状況表示を指定している。
# rpm -ivh xxxxxx.rpm
常に「U」オプションを指定してインストールするのもおすすめだ。「U」はアップグレードを示し、すでにインストールされている同一の古いパッケージがあれば、アップグレード処理をしてくれる。最初のインストールでも、「U」オプションを指定しても問題はない。
# rpm -Uvh xxxxxx.rpm
「oldpackage」は、バージョンダウンを行う場合のオプションだ。新しいパッケージをインストールしたけれど、動作の不具合から元のバージョンに戻すような場合に利用する。
# rpm -i --oldpackage xxxxxx.rpm
すでにインストール済みのパッケージを強制的に上書きするのが「force」オプションだ。ほかのパッケージで、一部のファイルが書き換えられてしまった場合などに有効だろう。
# rpm -i --force xxxxxx.rpm
インストール済みのパッケージすべてを確認する。
$ rpm -qa
特定の文字列「samba」を指定して、パッケージがインストールされているかを確認する。
$ rpm -q samba samba-2.0.7-ja_1.1
特定のコマンドが、いずれのパッケージでインストールされたのかを確認するには、「whatprovides」オプションを使う。
$ rpm -q --whatprovides /usr/bin/xnttp
インストールされているパッケージファイルが正常かどうかを確認するには、「qs」オプションを指定する。
$ rpm -qs samba-2.0.7-ja_1.1 normal/usr/share/swat/.............. normal/usr/share/swat/.............. normal/usr/share/swat/.............. normal/usr/share/swat/..............
パッケージの情報を確認するには、「qi」オプションを使う。
$ rpm -qi samba-2.0.7-ja_1.1 Name : samba Relocations: /usr Version: 2.0.7 Vendor: (none) Release: ja_1.1 Build Date: Sat 08 Jul 2000 09:17:41PM JST Install date: Mon 10 Jul 2000 05:28:32 PM JST Build Host: kami3.house.ume2001.com Group : Networking Source RPM: samba-2.0.7-ja_1.1.src.rpm Size : 19882244 License: GNU GPL version 2 Packager: John H Terpstra [Samba-Team] Summary: Samba SMB client and server Description : 〜以下略〜
RPMには、パッケージ情報を管理しているデータベースがある。このデータベースファイルを再構築するのが「rebuilddb」だ。万が一、rpmコマンドで思いもよらぬ挙動を示した場合には、このコマンドを試してみるのがよいかもしれない。
# rpm --rebuilddb
Copyright © ITmedia, Inc. All Rights Reserved.