【試した環境】 Google Cloud Platform(GCP)[VMインスタンス]上で実行 OS : Linux(Debian 9.2)
実行中のプロセスを表示
実行中のプロセスを表示する$ ps axfu
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 2 0.0 0.0 0 0 ? S 2017 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 2017 60:45 \_ [ksoftirqd/0]
root 5 0.0 0.0 0 0 ? S< 2017 0:00 \_ [kworker/0:0H]
:
www-data 24539 0.0 0.2 326192 19904 ? S 21:02 0:00 \_ /usr/sbin/apache2 -k start
www-data 24782 0.0 0.2 326328 17492 ? S 21:08 0:00 \_ /usr/sbin/apache2 -k start
:
a 自分以外のユーザーのプロセスも表示するx 制御端末のないプロセスの情報も表示する
f ツリー形式で表示する
u ユーザー名と開始時刻を表示する
grepしてフィルタ表示
このままでは関係のないプロセスも含めてたくさん表示されてしまうので、grepして表示しましょう。$ ps axfu | grep php
user+ 24906 0.0 0.0 12784 964 pts/0 R+ 12:18 0:00 | \_ grep php
user+ 1514 0.4 36.6 637412 374408 ? S Jan06 25:46 php function.php
[ | grep php ]を同時にコマンドに追加することで、[php]の文字列が存在する実行中のプロセスに絞ることができます。表示要素
表示される要素は以下のとおり。USER ユーザー PID プロセスID %CPU プロセスのCPU使用率 %MEM プロセスが確保している物理メモリ VSZ,RSS 仮想メモリ領域のサイズ、物理メモリ領域のサイズ TTY 仮想端末ファイル STAT プロセスの状態(詳細は後述) START プロセスの開始時間 TIME プロセスが実際にCPUを使った時間 COMMAND プロセスの実行コマンド <STAT列> 1文字目 R:実行可能状態なプロセス S:割り込み可能な待ち状態 D:ディスクIO待ちの状態 Z:ゾンビプロセス状態(親プロセスに待たれずに死んでしまった子プロセス) 2文字目以降 +:フォアグラウンドのプロセスグループ s:セッションリーダー <:優先度が高いプロセス N:優先度が低いプロセス l:マルチスレッドのプロセス
Windowsのタスクマネージャーと同じような用途で使うことができます。
実行中のプロセスを一覧して、メモリの使用量を調査したり、バックグラウンドで実行中のプロセスを止めたり、暴走したプロセスを確認したり、止めたりします。
親子関係などを確認する場合にはpstreeコマンドを使います。
$ pstree
systemd─┬─acpid
├─2*[agetty]
├─apache2───6*[apache2]
├─cron
├─dbus-daemon
├─dhclient
├─google_accounts
├─google_clock_sk
├─google_ip_forwa
├─mysqld───28*[{mysqld}]
├─ntpd───{ntpd}
├─php
├─rsyslogd─┬─{in:imklog}
│ ├─{in:imuxsock}
│ └─{rs:main Q:Reg}
├─sshd─┬─sshd───sshd───sftp-server
│ └─sshd───sshd─┬─bash───pstree
│ └─sftp-server
├─systemd-journal
├─systemd-logind
└─systemd-udevd
0 件のコメント:
コメントを投稿