パッケージpackage-1-2vl3.i386.rpmをインストールするには、オプション-i(Install;インストール)を用います。
# rpm -ivh package-1-2vl3.i386.rpm
オプション-v(verbose)と-h(hash)を用いるとインストール中にハッシュマーク(#)が出て、インストールの進む様子がわかります。
例 6.4. 依存関係(dependency)の解決
パッケージをインストールしようとしたときに、
libdepend.so.1 is needed by package-1-2vl3 sometool is needed by package-1-2vl3
もしくは、
libdepend.so.1 が package-1-2vl3 に必要です sometool が package-1-2vl3 に必要です
などというエラーが出ることがあります。 これは「パッケージ package-1-2vl3の中に、 libdepend.so.1というライブラリやsometoolというパッケージを必要とするファイルがあるにもかかわらず、 libdepend.so.1やsometoolがシステムにインストールされていない」ことによるエラーです。 このときには、 ライブラリlibdepend.so.1を含むパッケージや、パッケージsometoolを探してきてインストールして下さい。 項6.2.8. 「apt-cacheコマンドによるパッケージの検索」を参照してください。
もし、このような依存性を無視してインストールしたいときには、オプション
--nodepsを用いてインストールします。
# rpm -i --nodeps package-1-2vl3.i386.rpmとします。ただし、この場合にはインストールしたパッケージが正常に動作しない可能性があります。
例 6.5. 競合(conflict)の解決
package-1-2vl3.i386.rpmのインストール時に、
/usr/bin/cmd conflicts with file from another-3-4vl5
もしくは、
/usr/bin/cmd は another-3-4vl5 のファイルと競合します
というエラーが出た場合には、package-1-2vl3のファイル/usr/bin/cmdが、
すでにインストール済みのパッケージ another-3-4vl5のファイル/usr/bin/cmdと競合するために、
インストールできないことを示します。
もし、無理矢理インストールしたいときには、オプション--forceを用います。
# rpm -ivh --force package-1-2vl3.i386.rpmしかし、この場合には、元からあったanother-3-4vl5のファイル/usr/bin/cmdは、 package-1-2vl3によって上書きされてしまうので、取扱には注意が必要です。
すでに、package-1-1vl1.i386.rpmがインストールされていて、
新しいpackage-1-2vl3.i386.rpmにバージョンアップしたいときには、オプション
-F(Freshen;新しいものに変える)を用います。
古いバージョンのパッケージがインストールされている場合にのみパッケージを更新します。 新しいバージョンのパッケージがインストールされ、古いバージョンのパッケージは削除されます。
# rpm -Fvh package-1-2vl3.i386.rpm
ここで、オプション-vhの役割はインストールの時と同じです。
インストール -i に アップグレード -F も追加したものです。 古いバージョンのパッケージが、インストールされていなければ -i としてインストールし、 インストールされていれば -F として更新します。 新しいバージョンのパッケージがインストールされ、古いバージョンのパッケージは削除されます。
-U(Update;更新)を用います。
# rpm -Uvh package-1-2vl3.i386.rpm
オプション-vhの役割はインストールの時と同じです。
また、古いバージョンpackage-1-1vl1.i386.rpmに戻したいときには、オプション
--oldpackageを用います。
# rpm -Uvh --oldpackage package-1-1vl1.i386.rpm
インストールしたパッケージを削除(アンインストール)したくなったら、オプション
-e(erase;削除)を用います。
# rpm -e packageここで、バージョン番号やリリース番号は要りませんが、明示して
# rpm -e package-1-2vl3とすることもできます。ただし, パッケージpackageに含まれるファイル somefileが他のパッケージで利用されている場合には、
removing these packages would break dependencies: somefile is needed by another_pkg
もしくは、
これらのパッケージを必要としているパッケージがあります: somefile が another_pkg に必要です
などというエラーメッセージが出て削除できません。
無視して削除したいときには, オプション--nodepを用います。
# rpm -e --nodeps packageしかし、この場合は パッケージanother_pkgが動かなくなる可能性がありますので注意が必要です。
例 6.6. インストールされているrpmパッケージの情報を得る
パッケージをインストールしたけれでも、バージョンを忘れてしまったので知りたいと言うときには、
オプション-q(query)を用います。例えば、
パッケージ soxについて知りたい場合を示します。
$ rpm -q sox (soxのバージョンを知りたいとき)
sox-12.18.1-0vl2
また、オプション -i(information;情報)を併用して、
$ rpm -qi sox
Name : sox Relocations: (not relocatable)
Version : 12.18.1 Vendor: (none)
Release : 0vl2 Build Date: 2006年09月04日 14時02分44秒
Install Date: 2006年10月18日 00時56分44秒 Build Host: windy.local.dicey.org
Group : Applications/Multimedia Source RPM: sox-12.18.1-0vl2.src.rpm
Size : 675803 License: LGPL
Signature : DSA/SHA1, 2006年09月04日 14時02分44秒, Key ID 90bf4c0974322cb0
Packager : Daisuke SUZUKI <daisuke@linux.or.jp>
URL : http://sox.sourceforge.net/
Summary : 汎用サウンドファイル変換ツール
Description :
SoX (Sound eXchange) は Linux, UNIX, DOS PC 用サウンドファイルフォーマット
変換ツールです.SoX は「サウンドツール界のスイスアーミーナイフ」で,
様々なデジタルサウンドフォーマットを相互に変換したり,
簡単なサウンドエフェクト等の処理も行うことが出来ます.
このように、パッケージに関するいろいろな情報を得ることができます。さらに
オプション-l(list;一覧)を用いると、パッケージに含まれるファイル一覧が表示されます。
$ rpm -ql sox
/usr/bin/libst-config
/usr/bin/play
/usr/bin/rec
/usr/bin/sox
/usr/bin/soxmix
/usr/bin/soxplay
/usr/share/doc/sox-12.18.1
/usr/share/doc/sox-12.18.1/Changelog
/usr/share/doc/sox-12.18.1/INSTALL
/usr/share/doc/sox-12.18.1/README
/usr/share/doc/sox-12.18.1/TODO
/usr/share/man/man1/rec.1.gz
/usr/share/man/man1/sox.1.gz
/usr/share/man/man1/soxexam.1.gz
/usr/share/man/man1/soxmix.1.gz
これらのオプションを全て付けることもできます。表示が多い場合はページャ lessを用いると便利です。(参考:付録 E. ページャ less の操作方法)
# rpm -qil package | lessまた、grepコマンドを用いれば、探したいパターンpatternを検索することができます。
$ rpm -qil package | grep pattern
