このセクションでは自宅サーバーとしてLinuxを操作するうえでよく使うコマンドについて初心者/ビギナー向けに解説します。
お便利サーバー.com+相互リンクサイト内をキーワードで検索
抜粋Linuxコマンドリファレンス

ディレクトリとファイルの操作+

ディスクとパーティションの操作+

テキストの操作+

ユーザーとアカウント管理+

ネットワークの管理+

システム・プロセス管理+

その他のコマンド

rpmを管理する
HTTP/FTPでファイルを取得する
値・状態・情報を表示する

rpm〜rpm形式のパッケージを管理する

rpm 形式の アプリケーション CUI で操作するための コマンド です。

rpm形式のアプリケーションパッケージは、 GUI 操作でも簡単に扱えるようになっていますが、rpmコマンドによるCUI操作のほうがずっと強力で、柔軟な管理が可能です。

コマンドの一般書式は、

rpm [オプション] [ファイル名またはパッケージ名] ... Enter

です。[ファイル名またはパッケージ名]は、スペースで区切って複数指定することができますし、 ワイルドカード を使用することもできます。

rpmは、アプリケーションに関する様々な操作をたったひとつでこなす多機能なコマンドです。

もちろんそのために、非常に多くのオプションスイッチが用意されていることもrpmコマンドの特徴です。

しかしながら通常は、

1.アプリケーションの インストール 状態の確認

2.アプリケーションの新規インストール

3.アプリケーションの アップデート

4.アプリケーションの アンインストール

の4種類しか使うことはありません。また、それぞれの操作のオプションスイッチは「決まった組み合わせ」で大丈夫ですから、あまり難しい操作は覚える必要はありません。

"rpm -qa"〜インストール済みのrpmを表示する

システムに インストール されている rpm アプリケーション パッケージを一覧します。rpmパッケージではなく、別のパッケージからインストールしたアプリケーションは、このコマンドでは表示されません。

一般書式は、

rpm -qa Enter です。

[tanaka@web1 ~]$ rpm -qaEnter
 ↑インストール済みのパッケージを一覧を表示します。
rmt-0.4b41-4.el5
comps-extras-11.1-1.1.el5.centos
words-3.0-9.1
popt-1.10.2.3-18.el5
bash-3.2-24.el5
libcap-1.10-26
libgcrypt-1.4.4-5.el5
binutils-2.17.50.0.6-14.el5
 中略
scim-qtimm-0.9.4-5
mod_auth_mysql-3.0.0-3.2.el5_3
nspr-devel-4.8.4-1.el5_4
libpurple-2.6.6-2.el5_4
kexec-tools-1.102pre-96.el5_5.1
php-mcrypt-5.1.6-15.el5.centos.1
[tanaka@web1 ~]$

ただ、これだけでは大量のパッケージが一度に表示されてしまいますから、実際には grep sort more などと組み合わせて使います。

一番よく使われるのは、

rpm -qa | grep [キーワード] Enter です。

これで[キーワード]を含むrpm名だけが表示されます。

[tanaka@web1 ~]$ rpm -qa | grep httpdEnter
 ↑"httpd"を含むインストール済みrpmパッケージ名を一覧します。
httpd-2.2.3-43.el5.centos
system-config-httpd-1.3.3.3-1.el5
httpd-manual-2.2.3-43.el5.centos
[tanaka@web1 ~]$

これで表示される名前が、インストール済みのrpmパッケージとなります。

"rpm -i"〜新規にrpmをインストールする

rpm を新規にシステムに インストール するときのオプションスイッチです。

既に同じ名前のパッケージがインストールされている場合は、バージョンの新旧に係わらずインストールは実行されません。

rpmファイルが カレント ディレクトリ以外の場合は、ファイル名を パス 付きで指定する必要があります。

一般書式は、

rpm -i [rpmファイル名1] [rpmファイル名2]... Enter

です。 ワイルドカード を使用することもできます。

一般にはインストールの進行状況が解るように、詳細な進行状況を表示する "-v" と、状況をグラフで表示する "-h" オプションを組み合わせて、

rpm -ivh [rpmファイル名1] [rpmファイル名2]... Enter

とするほうが良いでしょう。

実行は "root" アカウント から行います。

[root@web1 ~]# rpm -ivh analog-6.0-1.i386.rpmEnter
Preparing...        ########################################### [100%]
  1:analog         ########################################### [100%]
[root@web1 ~]#

"rpm -i "を実行するとき、rpm コマンド は指定されたパッケージのインストールを行う前に他のパッケージとの依存関係を調べます。

そして、一緒にインストールが必要なパッケージや、インストール済みの他のパッケージの アップデート が必要な場合には、メッセージを表示してインストールを中止します。

"rpm -F"〜rpmをアップデートする

インストール 済みの rpm アップデート するときのオプションスイッチです。

この場合、同じ名前の古いバージョンのrpmがインストールされている場合にのみアップデートインストールが実行されます。古いバージョンがインストールされていないか、同一または新しいバージョンのrpmがインストールされている場合は、ファイル名を指定しても無視されます。

rpmファイルが カレント ディレクトリ以外の場合は、ファイル名を パス 付きで指定する必要があります。

一般書式は、

rpm -F [rpmファイル名1] [rpmファイル名2]... Enter

です。 ワイルドカード を使用することもできます。

一般にはインストールの進行状況が解るように、詳細な進行状況を表示する "-v" と、状況をグラフで表示する "-h" オプションを組み合わせて、

rpm -Fvh [rpmファイル名1] [rpmファイル名2]... Enter

とするほうが良いでしょう。

実行は "root" アカウントから行います。

このオプションは、多数のrpmをまとめて ダウンロード しておき、ダウンロードしたカレントディレクトリ内から、

rpm -Fvh *.rpm Enter

と実行することで、

「アップデート可能なものだけをアップデートし、カレントディレクトリに新規にインストール可能なパッケージが混ざっていてもインストールしない。」

という使い方ができます。

"rpm -F"を実行するとき、rpm コマンド は指定されたパッケージのインストールを行う前に他のパッケージとの依存関係を調べます。

そして、一緒にインストールが必要なパッケージや、インストール済みの他のパッケージのアップデートが必要な場合には、メッセージを表示してインストールを中止します。

"rpm -U"〜rpmをアップデートする

インストール 済みの rpm アップデート と、新規のrpmのインストールを行うときのオプションスイッチです。

この場合、同じ名前の古いバージョンのrpmがインストールされている場合にはアップデートインストールが実行され、同じ名前のrpmがインストールされていない場合は新規のインストールが実行されます。

同一または新しいバージョンのrpmがインストールされている場合は、ファイル名を指定しても無視されます。

rpmファイルが カレント ディレクトリ以外の場合は、ファイル名を パス 付きで指定する必要があります。

一般書式は、

rpm -U [rpmファイル名1] [rpmファイル名2]... Enter

です。 ワイルドカード を使用することもできます。

一般にはインストールの進行状況が解るように、詳細な進行状況を表示する "-v" と、状況をグラフで表示する "-h" オプションを組み合わせて、

rpm -Uvh [rpmファイル名1] [rpmファイル名2]... Enter

とするほうが良いでしょう。

実行は "root" アカウントから行います。

このオプションは、多数のrpmをまとめて ダウンロード しておき、ダウンロードしたカレントディレクトリ内から、

rpm -Uvh *.rpm Enter

と実行することで、

「アップデート可能なものはアップデートし、インストールされていないものは新規にインストールする。」

という使い方ができます。

"rpm -U"を実行するとき、rpm コマンド は指定されたパッケージのインストールを行う前に他のパッケージとの依存関係を調べます。

そして、一緒にインストールが必要なパッケージや、インストール済みの他のパッケージのアップデートが必要な場合には、メッセージを表示してインストールを中止します。

"rpm -e"〜rpmをアンインストールする

インストール 済みの rpm アンインストール するオプションです。

一般書式は、

rpm -e [rpm名1] [rpm名2]... Enter

です。

実行は "root" アカウントから行います。

このオプションの場合、指定するのはインストール時に用いるrpmファイル名ではなく、インストールされているrpm名です。

一般には、rpmファイル名から ".rpm" を除いたものはrpm名ですが、予め "rpm -qa" でrpm名を調べておくのが確実です。

"rpm -e"を実行するとき、rpm コマンド は指定されたパッケージのアンインストールを行う前に他のパッケージとの依存関係を調べます。

そして、一緒にアンインストールを行わなければならないパッケージがある場合、メッセージを表示してアンインストールを中止します。

yum〜通信でrpm形式のパッケージを管理する

rpm コマンド を利用してに、 rpm パッケージを間接的に管理し、 インストール アンインストール アップデート などを担うコマンドです。

rpmコマンドを直接使用する場合との違いは、rpmがインストールやアップデートに関して、システム上に ダウンロード 済みのパッケージを対象としているのに対し、yumは "/etc/yum.conf" に記述された サーバー 上のパッケージを参照して動作する点にあります。

従って、外部の FTPサーバー 上のパッケージ情報にあわせて一斉にアップデートしたいような場合にはyumを利用すると便利ですが、サーバー上にないパッケージについては一般的にrpmコマンドで操作することになります。

コマンドの一般書式は、

yum [オプション] [パッケージ名] ... Enter

です。

yumは、 "/etc/yum.conf" に記述されたサーバーを参照しますが、その設定については、 /etc/yum.confの設定(WBEL3) /etc/yum.confの設定(CentOS3) /etc/yum.confの設定(WBEL4) /etc/yum.confの設定(CentOS4) /etc/yum.confの設定(CentOS5) を参考にしてください。

"yum list"〜利用可能なパッケージを一覧する

任意の ユーザーアカウント から、

yum list [パッケージ名] Enter

と実行します。

すると[パッケージ名]と一致する アプリケーション サーバー 上に存在していて、 インストール アップデート が可能であれれば、パッケージ名と共にその情報を表示します。

[パッケージ名]を省略すると、yumで利用可能なすべての ソフトウェア パッケージの一覧を取得することができます。

[root@web1 ~]# yum listEnter
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
addons                         | 951 B   00:00
base                          | 1.1 kB   00:00
extras                         | 2.1 kB   00:00
updates                         | 1.9 kB   00:00
Installed Packages
Deployment_Guide-ja-JP.noarch      5.2-11.el5.centos       installed
GConf2.i386               2.14.0-9.el5         installed
MAKEDEV.i386               3.23-1.2           installed
 しばらくこういう表示が続きます(中略)。
yum-versionlock.noarch          1.1.16-14.el5.centos.1    base
yumex.noarch               2.0.3-2.el5.centos      extras
zsh-html.i386              4.2.6-3.el5          base
[root@web1 ~]#

リストの内容は左からパッケージ名(例:zsh)、対応する ハードウェア アーキテクチャ (例:i386) 、バージョン(例:4.0.7-1.EL.2)、そのバージョンがアップデート版であるか否か(例:updates-released)、を示します。

"yum check-update"〜アップデート可能なパッケージを一覧する

任意の ユーザーアカウント から、

yum check-update [パッケージ名] Enter

と実行します。

すると[パッケージ名]と一致する アプリケーション サーバー 上に存在していて、 アップデート 可能であれば(古いバージョンがシステム上に インストール 済みであるということ)、パッケージ名と共にその情報を表示します。

[パッケージ名]を省略すると、アップデート可能なすべての ソフトウェア パッケージの一覧を取得することができます。

[root@web1 ~]# yum check-updateEnter
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile

gnutls.i386               1.4.1-3.el5_4.8         updates
kernel.i686               2.6.18-194.3.1.el5        updates
kernel-devel.i686            2.6.18-194.3.1.el5        updates
 しばらくこういう表示が続きます(中略)。
xorg-x11-server-Xnest.i386       1.1.1-48.76.el5_5.1       updates
xorg-x11-server-Xorg.i386        1.1.1-48.76.el5_5.1       updates
xorg-x11-server-Xvfb.i386        1.1.1-48.76.el5_5.1       updates
[root@web1 ~]#

リストの内容は yum list と同じです。

"yum update"〜パッケージをアップデートする

root アカウント から、

yum update [パッケージ名]... Enter

と実行します。

すると[パッケージ名]と一致するものが ダウンロード され、 アップデート が行われます。

[パッケージ名]を省略すると、アップデート可能なすべての ソフトウェア のアップデートが行われます。

[root@web1 ~]# yum updateEnter
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package gnutls.i386 0:1.4.1-3.el5_4.8 set to be updated
---> Package kernel.i686 0:2.6.18-194.3.1.el5 set to be installed
---> Package kernel-devel.i686 0:2.6.18-194.3.1.el5 set to be installed
 しばらくこういう表示が続きます(中略)。
xorg-x11-server-Xorg  i386   1.1.1-48.26.el5_1.5 updates      3.2 M
xorg-x11-server-Xvfb  i386   1.1.1-48.26.el5_1.5 updates      1.6 M

Transaction Summary
=============================================================================
Install   2 Package(s)
Upgrade   20 Package(s)

Total download size: 48 M
Is this ok [y/N]:

するとパッケージ相互の依存性がチェックされたあと、最終確認の プロンプト が表示されますので、アップデートを実行してよければ y Enter を、中止したければ n Enter とタイプします。

"yum install"〜パッケージをインストールする

root アカウント から、

yum install [パッケージ名]... Enter

と実行します。

すると[パッケージ名]と一致するものが ダウンロード され、新規に インストール が行われます。

[root@web1 ~]# yum install caching-nameserverEnter
Loading "installonlyn" plugin
Setting up Install Process
Setting up repositories
extras          100% |=========================| 1.1 kB  00:00
  中略
Dependencies Resolved

=============================================================================
Package         Arch    Version     Repository    Size
=============================================================================
Installing:
caching-nameserver   i386    30:9.3.3-10.el5 base        56 k

Transaction Summary
=============================================================================
Install   1 Package(s)
Update    0 Package(s)
Remove    0 Package(s)

Total download size: 56 k
Is this ok [y/N]:yEnter
  中略
Installed: caching-nameserver.i386 30:9.3.3-10.el5
Complete!
[root@web1 ~]#

依存関係で、複数のパッケージを同時にインストールする必要がある場合には、[パッケージ名]をスペースで区切って複数並べて実行します。

インストールを実行した後は、 yum list を実行してリストを更新しないと、次のyumコマンドを実行できないことがありますので注意してください。

"yum remove"〜パッケージをアンインストールする

root アカウント から、

yum remove [パッケージ名]... Enter

と実行します。

すると[パッケージ名]と一致するものが アンインストール されます。

[root@web1 ~]# yum remove webalizerEnter
Loaded plugins: fastestmirror
Setting up Remove Process
Resolving Dependencies
--> Running transaction check
---> Package webalizer.i386 0:2.01_10-30.1 set to be erased
--> Finished Dependency Resolution

Dependencies resolved

================================================================================
Package      Arch     Version         Repository     Size
================================================================================
Removing:
webalizer     i386     2.01_10-30.1      installed     252 k

Transaction Summary
================================================================================
Remove    1 Package(s)
Reinstall   0 Package(s)
Downgrade   0 Package(s)
Is this ok [y/N]: yEnter
 ※↑アンインストールを中止するときは nEnter
Downloading Packages
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
 Erasing    : webalizer                        1/1

Removed:
 webalizer.i386 0:2.01_10-30.1
Complete
[root@web1 ~]#

依存関係で、複数のパッケージを同時にアンインストールする必要がある場合には、[パッケージ名]をスペースで区切って複数並べて実行します。

アンインストールを実行した後は、 yum list を実行してリストを更新しないと、次のyumコマンドを実行できないことがありますので注意してください。

このサイトは リンクフリー です。趣味や勉強のためでしたら、引用、転用、コピー、朗読、その他OKです。このサイトへのリンクについては こちら をご覧ください。今のところ更新予定はありませんのでご了承ください。
”Linux”は、Linus Torvalds 氏の各国における登録商標です。”Red Hat”及びRed Hatのロゴおよび Red Hat をベースとしたすべての商標とロゴは、各国におけるRed Hat, Inc. 社の商標または登録商標です。その他のプログラム名、システム名、製品名などは各メーカー、ベンダの各国における登録商標又は商標です。