Linuxのコマンドを「やりたいこと」でまとめました。「やりたいこと」を実行するためのコマンドと使用例を掲載しています。コマンドの基本を学びたい方は「Linuxコマンド道場」を参照ください。ファイルの操作からテキスト・ファイルの処理方法まで,例題に基づいて学べます。

 Linuxコマンド逆引き大全
コマンド集(機能別) | コマンド集(アルファベット順) | コマンド逆引き大全 | シェル・スクリプト・リファンレス

 RPMパッケージをインストールする
# rpm -ivh package-x.x.x.xxx.rpm

 Red Hat系のLinuxでは,RPM(Red Hat Package Manager)パッケージを使用することにより,ソフトウエアを容易にインストールできる。RPMパッケージの多くは,バイナリとソースが両方用意されている。バイナリの場合は,拡張子に".i386.rpm"や".alpha.rpm"といったハードウエア名が記載されている。また,ソース(SRPM と呼ばれる)の場合は,拡張子が".src.rpm"である。

 パッケージのインストールには,ルート権限が必要がある。バイナリ・パッケージをインストールするには,


# rpm -ivh package-x.x.x.i386.rpm

と入力する。また,多くのパッケージをまとめてインストールした場合は,ワイルド・カードで指定すると便利である。ただし,インストールするパッケージの順番が決まっている場合もあるので,注意が必要である。また,「ファイルが競合する」というメッセージが現れた場合でも,「?--force」オプションを付けることで(強制)インストールが行える。

 ソース・パッケージの場合は,


# rpm --rebuild package-x.x.x.src.rpm

と入力すると「/usr/src/redhat/RPMS/(Red Hat Linuxの場合)」以下のディレクトリなどにRPMパッケージのバイナリ・ファイルが作成される。


 応用:RPMパッケージをアップデートする
# rpm -Uvh package-x.x.x.xxx.rpm

 インストールしたいRPMパッケージの古いバージョンが既にインストールされている場合は,アップデートにより新パッケージと入れ替えることができる。アップデートするにはオプション「-Uvh」を指定する。アップデートの場合もルート権限が必要である。


 応用:RPMパッケージがインストールされているか調べる
$ rpm -q package
$ rpm -qa | grep "package"

 あるRPMパッケージが既にインストールされているかどうか調べるには,オプションに「-q」を付け,その後に調べたいパッケージ名を指定する。


$ rpm -q samba
samba-2.0.5aJP2-7vl3

 しかし,これでは指定したパッケージしか表示されない。develといった関連の深いパッケージを同時に調べたい場合は,導入済みの全パッケージを表示する「-qa」オプションを指定し,grepによりその中から指定した文字列が入っているパッケージだけを抜き出すようにするとよい。


$ rpm -qa | grep "samba"
samba-2.0.5aJP2-7vl3
samba-client-2.0.5aJP2-7vl3
samba-common-2.0.5aJP2-7vl3


 応用:RPM パッケージをアンインストールする
# rpm -e package

 RPMパッケージをアンインストールするには「-e」オプションを付け,その後にパッケージ名を指定する。パッケージのアンインストールにはルート権限が必要である。

 関連パッケージがある場合は,パッケージ名を詳細に指定する必要が生じる。詳細なパッケージ名を知る方法については,「RPMパッケージがインストールされているか調べる」を参照してほしい。

 なお,アンインストールする場合は,特に依存関係を注意しなければならない。以下のようなエラー・メッセージが現れた場合は,削除しようとしているパッケージが他のパッケージから使われているので,消すことは望ましくない。それでも削除したい場合は,利用している別のパッケージを先に削除する。


# rpm -e gnome-core
エラー: これらのパッケージを必要としているパッケージがあります
        gnome-core = 1.0.55 がgnome-core-devel-1.0.55-1vl3 に必要です
        libpanel_applet.so.0 がpygnome-1.0.50-1vl1 に必要です
        libpanel_applet.so.0 がxchat-1.4.0-0vl2 に必要です