第 42章. システム情報の収集

システム設定の方法を考える前に、まず基本的なシステム情報を収集する方法を考えなければいけません。たとえば、未使用のメモリがどれだけ残っているか、ハードディスクドライブの使用可能なスペースの大きさはどの程度か、ハードディスクドライブのパーティションがどうなっているか、どんなプロセスが作動しているかといったことを知っておく必要があります。この章では、いくつかの簡単なコマンドやプログラムを使ってRed Hat Enterprise Linuxシステムからこのような情報を収集する方法を説明します。

42.1. システムプロセス

ps axコマンドは、現在動いているシステム プロセスを、ほかのユーザーが所有するものも含めて一覧にして 表示します。プロセスの所有者も表示したいときは、 ps auxコマンドを使います。この一覧は静的です。 つまり、このコマンドを実行したときに作動しているものの状態を 表しているだけです。実行プロセスの一覧を継続的に更新したい 場合は、のちほど説明するtopコマンドを 使います。

ps出力は長くなる可能性があります。 画面外へスクロールするのを防ぐために、パイプを使用して lessで表示することができます。

ps aux | less

psコマンドとgrep コマンドを組み合わせて使用すると、あるプロセスが動いているかどうかを調べることができます。例えば、Emacs が実行されているかを調べるには、次のコマンドを使用します。

ps ax | grep emacs

topコマンドは、現在動作中のプロセスを 表示します。これには、メモリやCPU使用率などの重要な情報も 含まれています。一覧はリアルタイムでインタラクティブです。 次に示すのは、topの出力表示例です。

 19:11:04  up  7:25,  9 users,  load average: 0.00, 0.05, 0.12
89 processes: 88 sleeping, 1 running, 0 zombie, 0 stopped
CPU states:  cpu    user    nice  system    irq  softirq  iowait    idle
           total    6.6%    0.0%    0.0%   0.0%     0.0%    0.0%  192.8%
           cpu00    6.7%    0.0%    0.1%   0.1%     0.0%    0.0%   92.8%
           cpu01    0.0%    0.0%    0.0%   0.0%     0.0%    0.0%  100.0%
Mem:  1028556k av,  241972k used,  786584k free,       0k shrd,   37712k buff
       162316k active,              18076k inactive
Swap: 1020116k av,       0k used, 1020116k free                   99340k cached
                                                                                
  PID USER     PRI  NI  SIZE  RSS SHARE STAT %CPU %MEM   TIME CPU COMMAND
 1899 root      15   0 17728  12M  4172 S     6.5  1.2 111:20   0 X
 6380 root      15   0  1144 1144   884 R     0.3  0.1   0:00   0 top
    1 root      15   0   488  488   432 S     0.0  0.0   0:05   1 init
    2 root      RT   0     0    0     0 SW    0.0  0.0   0:00   0 migration/0
    3 root      RT   0     0    0     0 SW    0.0  0.0   0:00   1 migration/1
    4 root      15   0     0    0     0 SW    0.0  0.0   0:00   0 keventd
    5 root      34  19     0    0     0 SWN   0.0  0.0   0:00   0 ksoftirqd/0
    6 root      34  19     0    0     0 SWN   0.0  0.0   0:00   1 ksoftirqd/1
    9 root      25   0     0    0     0 SW    0.0  0.0   0:00   0 bdflush
    7 root      15   0     0    0     0 SW    0.0  0.0   0:00   1 kswapd
    8 root      15   0     0    0     0 SW    0.0  0.0   0:00   1 kscand
   10 root      15   0     0    0     0 SW    0.0  0.0   0:01   1 kupdated
   11 root      25   0     0    0     0 SW    0.0  0.0   0:00   0 mdrecoveryd

topコマンドを終了するには、[q ]キーを押します。

以下は、topコマンドの動作中に使える、 便利なコマンドです。

コマンド説明
[Space]すぐに表示を更新します
[h]ヘルプ画面を表示します
[k]プロセスをkillします。プロセスIDとそれに送る 信号を要求されます。
[n]表示されるプロセスの数を変更します。 数を入力するように要求されます。
[u]ユーザーの順に並べます。
[M]メモリ使用量の順に並べます。
[P]CPU使用率の順に並べます。

表 42-1. インタラクティブなtopのコマンド

ティップヒント
 

Mozilla Nautilusなどのアプリケーションは、 スレッド認知します。— 複数のスレッドが 複数のユーザーまたは複数の要求を取り扱うために作成され、 各スレッドにはプロセスIDが与えられます。デフォルトでは、 pstopはメイン(初期) のスレッドのみ表示します。すべてのスレッドを表示するには、 ps -mコマンドを使用するか、または topの中で[Shift][H] のキーの組み合わせを押します。

topをグラフィカルインターフェイス で使いたい場合は、GNOME システムモニタ を利用できます。デスクトップで起動するには、 (パネル上の)メインメニューボタン => システムツール => システムモニタと進むか、または、X Window System 内のシェルプロンプトでgnome-system-monitor とタイプします。そして、プロセス一覧 タブを選択します。

GNOMEシステムモニタを使用すると、 起動中のプロセス一覧でプロセスの検索ができ、また、すべての プロセス、自分のプロセス、またはアクティブなプロセスを表示 できます。

プロセスについての詳細を見るには、そのプロセスを選択 して、詳細情報ボタンをクリックします。 プロセスに関する詳細がウィンドウの底辺に表示されます。

プロセスを停止するには、それを選択してプロセスの 終了をクリックします。この機能は、ユーザー入力に 応答しなくなったプロセスに役に立ちます。

特定の欄で情報別に分類するには、その欄の名前をクリック します。情報が分類された欄が濃い灰色で提示されます。

デフォルトでは、GNOMEシステムモニタ はスレッドを表示しません。この設定を変更する には、編集 => Preferences と選択して、プロセス一覧 タブをクリックします。そしてスレッドを表示する を選択します。また、Preferencesでは更新時間、 デフォルトで各プロセスについて表示する情報のタイプ、 システムモニタグラフの色などの設定もできます。

図 42-1. GNOME システムモニタ