よく使うLinuxコマンド

ps - サーバー管理でよく使うコマンド

起動中のプロセスの状態を表示します

■よく使う形(例)

※プロセスの詳細情報を表示する。
# ps aux ※端末に結びつけたすべてのプロセスの状態を詳細に表示します。
# ps -el

一般的にもよく使うコマンドです。
オプションが豊富で、プロセスの状態をいろいろな形で見つけることができます。
例えば、「開発中のプログラムを実行したら、なかなか帰ってこなくなった」という場合、psコマンドを使うと、CPUやメモリの使用率から、無限ループが見つかったりします。(あまりいい例えではないですが....。) こんなときプロセスIDをpsコマンドで調べて、強制終了を行います。(killコマンド
その他、auxの組み合わせのオプションを使うと、より詳しくプロセスを見ることができます。プロセスの親子関係や、バックエンドで実行されているプロセスの識別など、容易に行うことができます。

このpsコマンド、ちょっとオプションが変わっています。その昔、UNIXはBSD系とSystemV系とで別々に開発されてきました。基本的に同じ UNIXではありますが、使い勝手が少し違っていました。Linuxはそんなことも考えてか、psコマンドでは、両方のオプションが使えたりします。ハイ フン(-)を使うのが、SystemV系ですね。

■主な出力データの見方

項目 意味 コメント
UID ユーザーID  
PID プロセスID このプロセスのID。killコマンドなどでも使用する
PPID 親のプロセスID 呼び出された親のプロセスID
NI ナイス値  
WCHAN カーネル関数名 プロセスが休眠している時のカーネル関数名
TTY 端末の種類 端末の種類と端末番号を表示
USER 実行ユーザー名  
RSS プロセスの実メモリサイズ  
STAT ステータ プロセスのステータス
R:実行可能 S:停止プロセス Z:ゾンビプロセス W:スワップアウトしたプロセス
START 開始時刻 プロセスの開始時刻
TIME 実行時間  
CMD
COMMAND
実行コマンド オプションにa,u,xを使うと、プログラムの絶対パスを見ることができる。プロセスがどのように実行されているかがよくわかる。

■主なオプション

オプション 機能説明
-l 詳細を表示。
-e すべてのプロセスを表示。
a 端末に紐づけたプロセスをすべて表示する。
u CPU使用率、メモリ使用率、開始時間などの詳細情報を表示する。
x 端末に紐づかないプロセスもすべて表示。