Linux:プロセス管理の一般的なコマンド

3597 ワード

1.探査プロセス
一般的なコマンド:
ps-ef:すべてのプロセスを表示します.-eパラメータは、システム上で実行されているすべてのプロセスを表示します.-fパラメータは出力を拡張する.
UID:プロセスを開始するユーザ;
PID:プロセスのID;
PPID:親プロセスのID;
C:プロセスライフサイクル中のCPU利用率;
STIME:プロセス起動時のシステム時間;
TTY:プロセス起動時の端末装置;
TIME:プロセスを実行するために必要な累計CPU時間;
CMD:起動プロセスのプログラム名
shaphicprb13137:~/test2 # ps -ef
UID         PID   PPID  C STIME TTY          TIME CMD
root          1      0  0 Jun13 ?        02:20:01 /usr/lib/systemd/systemd --swi
root          2      0  0 Jun13 ?        00:00:08 [kthreadd]
root          3      2  0 Jun13 ?        01:21:47 [ksoftirqd/0]
root          5      2  0 Jun13 ?        00:00:00 [kworker/0:0H]
root          7      2  0 Jun13 ?        04:12:55 [rcu_sched]
root          8      2  0 Jun13 ?        00:00:00 [rcu_bh]
root          9      2  0 Jun13 ?        00:25:29 [migration/0]
root         10      2  0 Jun13 ?        00:00:20 [watchdog/0]
root         11      2  0 Jun13 ?        00:00:23 [watchdog/1]
root         12      2  0 Jun13 ?        00:25:31 [migration/1]
……
……
……

コマンドはgrepと組み合わせてプロセスをフィルタできます.
 
2.リアルタイム検出プロセス
psはリアルタイムのプロセス情報しか見えず,プロセスの変化傾向は見えない.topコマンドを使用すると、この場合に適しています.
次のようになります.
最初の行には、現在の時間、システムの実行時間、ログインしたユーザー数、およびシステムの平均負荷が表示されます.平均負荷は3つの数値があり、最近1分、最近5分、最近15分の平均負荷です.
2行目には、実行、スリープ、停止、または硬直状態のプロセスがどれくらいあるか(プロセスは完了したが、親プロセスは応答しなかった)のサマリーが表示されます.
3行目はCPUの概要情報です.topは、プロセスの所有者(ユーザーかシステムか)とプロセスの状態(運転、空き、待機)に応じて、CPUの利用率をいくつかの種類に分けて出力します.
4行目と5行目は、それぞれメモリサマリー情報とスワップ領域サマリー情報です.メモリ総量、使用済みメモリ、空きメモリです.
次の詳細リストは、psコマンドと同様にプロセスの詳細です.
PID:プロセスID;
USER:プロセスの所有者の名前;
PR:プロセス優先度;
NI:プロセスの謙譲度;
VIRT:プロセスが占有する仮想メモリの総量;
RES:プロセスが占有する物理メモリの総量;
SHR:プロセスと他のプロセスが共有するメモリの総量;
S:プロセスの状態、Dは中断可能な休眠状態、Rは運行状態、Sは休眠状態、Tはフォロー中状態または停止状態、Zは硬直状態を表す.
%CPU:プロセスで使用するCPUの時間比率;
%MEM:プロセスで使用できるメモリの割合;
TIME+:プロセスの起動から現在までのCPU時間の総量;
COMMAND:起動プロセスのプログラム名.
topコマンドはデフォルトで%CPU値でプログラムをソートします.コマンド調整:fで出力をソートするフィールドを選択できます.dポーリング時間の変更を許可し、デフォルトのポーリング時間は3秒である.
shaphicprb13137:~/test2 # top
top - 17:31:13 up 90 days,  8:37,  1 user,  load average: 5.69, 4.96, 4.87
Tasks: 648 total,   1 running, 647 sleeping,   0 stopped,   0 zombie
%Cpu(s): 11.8 us,  7.8 sy,  0.0 ni, 78.7 id,  0.3 wa,  0.0 hi,  1.0 si,  0.4 st
KiB Mem:  65784500 total, 63475292 used,  2309208 free,  1181356 buffers
KiB Swap:  4192252 total,   259908 used,  3932344 free. 26328900 cached Mem

   PID USER      PR  NI    VIRT    RES    SHR S   %CPU  %MEM     TIME+ COMMAND
 19208 ossuser   20   0 2295904  99236  11656 S 33.113 0.151  30819:20 etcd
318117 ossuser   20   0 3799628 2.848g     24 S 32.781 4.540  11070:08 java
 40492 ossuser   20   0 4299472 1.299g  19232 S 17.550 2.071   6947:03 java
 75556 ossuser   20   0  514244 349480  18792 S 12.252 0.531 715:03.73 java
 92047 ossadm    20   0 1793944 294724  13096 S  7.616 0.448   3285:32 java
206716 ossuser   20   0 2328324 1.685g  12412 S  5.960 2.686   2273:09 java
  9241 ossuser   20   0 6896164 907992  18096 S  5.629 1.380   2334:38 java
 83678 ossadm    20   0 2132032 403276  11852 S  4.305 0.613   1997:08 java
336249 ossuser   20   0 1699348 1.125g  12924 S  4.305 1.792   2015:56 java
345407 ossadm    20   0 1516456 216484  11476 S  4.305 0.329   1369:58 java
154294 dbuser    20   0   54212  11708   3064 S  3.974 0.018   1753:38 redis-server
  1710 root      20   0 1307712  46436  18056 S  3.642 0.071   5762:35 messageservice
……
……
……

 
3.プロセス終了
kill「プロセス番号」
killallはプロセス名によるプロセスの終了をサポートし、名前ワイルドカードをサポートする
たとえば、killall ftp*はftpで始まるすべてのプロセスを終了します.