UsingRPM



はじめに

ここでは、簡単にrpmパッケージのインストールやアンインストール等を行う方 法を説明します。方法としては、大きく分けて、 という2つの方法があります。 Vine Linux では、glint がデフォルトでインストールされているので、 GUIでrpmパッケージのインストールをしたい人は、これを使ってください。 glintはcontrol-panelから立ち上げることもできます。

ここでは 2番目の rpm コマンドを用いた rpm パッケージの操作方法を解説し ます。man rpm や jman rpm、または rpm --help でも、rpm コマンドのいろい ろなオプションを知ることができます。


rpmパッケージのインストール(rpm -i)

どこかで
    hoge-1-2.i386.rpm
というrpmパッケージを入手したします。このファイルをインストールする ときには、-i (Install) オプションを使って、
    rpm -i hoge-1-2.i386.rpm
とします。また、-v (verbose), -h (hash)を併用して、
    rpm -ivh hoge-1-2.i386.rpm
などとすると、インストール中にハッシュマーク(#)が出て、インストールの進 む様子がわかります。(ためしてみましょう)

dependencyの解決

さて、rpmパッケージをインストールしようとしたときに、
    libHore.so.1 is needed by hoge-1-2
    hare is needed by hoge-1-2
もしくは、
    libHore.so.1 が hoge-1-2 に必要です
    hare が hoge-1-2 に必要です
などというエラーが出ることがあります。 これは、rpmパッケージ hoge-1-2 の 中に、hare という rpmパッケージや、libHore.so.1 とするファイルがあるが、 libHore.so.1がシステムにはインストールされていないことによるエラーです。 このときには、パッケージ hare と libHore.so.1を含むパッケージを探してき てインストールしてください。もし、このような依存性を無視してインストール したいときには、--nodeps オプションを用いて
    rpm -i --nodeps hoge-1-2.i386.rpm
とします。ただし、この場合にはインストールしたパッケージが正常に動作しな い可能性があります


rpmパッケージのアップグレード(rpm -U)

すでに、hoge-1-1.i386.rpm がインストールされていて、 新しいものにバージョンアップしたいときには、-U (Update) オプションを用いて
    rpm -U hoge-1-2.i386.rpm
    rpm -Uvh hoge-1-2.i386.rpm
とします。(上の2つの違いはインストール時と同じです) また、古いバージョンに戻したいときには、--oldpackage オプションを用いて、
    rpm -U --oldpackage hoge-1-2.i386.rpm
とします。

conflictの解決

hoge-1-2.i386.rpm のインストール時に、
    /usr/bin/poo conflicts with file from fuga-2-3
もしくは、
    /usr/bin/poo は fuga-2-3 のファイルと競合します
というエラーが出た場合には、hoge のファイル/usr/bin/poo が, すでにインストールされているパッケージ fuga-2-3 の /usr/bin/poo と重複するために、インストールできないことを示します。もし、無理矢理イン ストールしたいときには、--force オプションを用いて、
    rpm -i --force hoge-1-2.i386.rpm
とします。しかし、この場合には、もとからあった fuga のファイル /usr/bin/poo は、hoge によって上書きされてしまうので、取扱には要注意です。


rpmパッケージの削除(rpm -e)

インストールしてあるhogeを削除(アンインストール)したくなったら、-e (erase)オプ ションを用いて, 以下のようにします。
    rpm -e hoge
ここで、バージョン番号やリリース番号はいりませんが、明示して
    rpm -e hoge-1-2
とすることもできます。ただし, hoge が他のパッケージを用いるのに必要な場 合には,
    removing these packages would break dependencies:
    hoge is needed by fugafuga
もしくは、
    これらのパッケージを必要としているパッケージがあります:
    hoge が fugafuga に必要です
などというエラーメッセージが出て, 削除できません. 無視して削除したいときには, --nodep オプションを用いて,
    rpm -e --nodeps hoge-1-2
とします.

rpmパッケージに関する情報を得る(rpm -q)

インストールされているrpmパッケージの情報を得る

hogeというパッケージをインストールしたのだけど、バージョンを忘れてしまっ たので知りたい、というときには、-q (query)オプションを使って、
    rpm -q hoge
とすれば、表示されます。さらに、-i (information)と併用して、
    rpm -qi hoge
で、パッケージに関するいろいろな情報が、-l (list)を用いて、
    rpm -ql hoge
パッケージhogeに含まれるファイル一覧が表示されます。

持って来たrpmパッケージに関する情報を得る

インストールされているパッケージでなく、もってきたパッケージ hoge-1-2.i386.rpm の情報やファイル一覧を知りたいときには、-p (package)オ プションを併用して、それぞれ
    rpm -qip hoge-1-2.i386.rpm
    rpm -qlp hoge-1-2.i386.rpm
とすれば表示されます。さらに、-v (verbose) オプションも使って
    rpm -qlvp hoge-1-2.i386.rpm
とすると、各ファイルの属性等も表示されます.

インストールされているファイルの属するパッケージ名を知る

インストールされてるファイル /usr/bin/fuga がなんというrpmパッケージに 含まれているものかを知りたいときには、-f (file)オプションを使って、
    rpm -qf /usr/bin/fuga
とします。
Jun NISHII, Project Vine
Last modified: Wed Apr 28 21:38:14 JST 1999