ps の使い方

プロセスの一覧

書き方

ps aux
ps -ef
ps aux --sort=-%cpu
ps -eZ / ps auxZ(SELinux のドメイン)
ps -o pid,user,cmd -p PID

動いているプログラムと PID・CPU 使用率を表示します。-Z を付けると httpd_t などのドメインも出ます。

よく使うオプション

オプション意味
aux全部のプロセスを、使っている CPU・メモリと一緒に
-ef全部のプロセスを、親の PID(PPID)と一緒に
--sort=-%cpuCPU を多く使っている順に並べる
-o 項目,…出す項目を選ぶ
-p PIDその PID だけ
-u ユーザーそのユーザーのものだけ

例

$ ps aux --sort=-%mem | head -n 6

メモリを多く使っているプロセスを上から 5 つ見ます(1 行目は見出し)。

$ ps -ef | grep nginx

nginx のプロセスを探します。PPID で親子の関係も分かります。

$ ps -o pid,user,%cpu,cmd -p 1123    PID USER     %CPU CMD
   1123 root      0.0 sshd: /usr/sbin/sshd -D [listener]

PID 1123 のプロセスについて、持ち主・CPU・コマンドだけを出します。

$ ps -u apache

apache ユーザーが動かしているプロセスだけを出します。

よくある間違い・注意

  • ps は打った瞬間の様子です。動きを続けて見たいときは top を使います。
  • ps aux(- なし)と ps -ef は書き方の流儀が違います。ps -aux と書くと警告が出ることがあります。

実際に打って練習する

Linux レベル1 コースの Lv65「魔物を見つける ps」で覚えます(第4章 サーバーの守り手(パッケージとサービス))。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。

Lv1〜16 は、登録不要・無料で遊べます(それより先はブロンズ以上のプランで遊べます)。

Linux コマンド一覧(LinuC レベル1 の範囲)へ戻る