Linuxを保守する上で役に立つコマンド(プロセス編)

  • システムの稼働状況を知る
[root@localhost ~]# vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 867384  98476 450280    0    0    62    21  849  733  4  4 90  2  0
  • メモリの負担状況を知る
[centos@localhost ~]$ free -m
             total       used       free     shared    buffers     cached
Mem:          1562        714        848          0         95        439
-/+ buffers/cache:        178       1383
Swap:          511          0        511

mオプションはメガ単位、gも使えます。

  • CPUの負荷状況を見る
[centos@localhost ~]$ uptime
 11:13:53 up 43 min,  4 users,  load average: 0.29, 0.21, 0.12
[centos@localhost ~]$ w
 11:17:15 up 46 min,  4 users,  load average: 0.10, 0.15, 0.10
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
centos   :0       -                23:58   ?xdm?  18.38s  0.24s /usr/bin/gnome-
centos   pts/1    :0.0             23:58   11:18m 11.55s 11.52s vmware-toolbox
centos   pts/2    :0.0             00:14    0.00s  0.05s  0.01s w
centos   pts/3    :0.0             00:08   17:38   0.08s  2.48s gnome-terminal

こっちの方が便利ですが…

[centos@localhost ~]$ top    
  • ログインしているユーザーを見る
[centos@localhost ~]$ finger
  • プロセスの状態を見るコマンド
[centos@localhost ~]$ ps aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0   2152   640 ?        Ss   10:30   0:00 init [5]      
root         2  0.0  0.0      0     0 ?        S<   10:30   0:00 [migration/0]
…
[centos@localhost ~]$ ps aux | grep cuspd
centos    5613  0.0  0.0   5068   788 pts/2    R+   11:26   0:00 grep cuspd
…
オプション a:自分以外のユーザのプロセスを表示, x:デーモンなどのプロセスを表示するオプション, u:ユーザー名などの詳細を表示する
各コラム VSZ/RSS:利用しているメモリのサイズ, TTY:標準入力や標準出力に使われる端末の名前
プロセスの状態 S:スリープ, D:I/O待ち, T:停止待ち, Z:終了中, <:優先度が高い, N:優先度が低い, L:特別なプロセス
  • プロセスの強制終了
$ kill -KILL PID