あるプロセスがサーバに過大な負荷をかけているとき、その犯人と、原因のプログラムファイルを発見する一番早い(?)方法。
まずtopコマンドやpsコマンドで、そのプロセスのプロセス番号を調べる。
-------------------------------------------------------------------------------------------
$ su
# top
-------------------------------------------------------------------------------------------
プロセス番号がわかったら、
-------------------------------------------------------------------------------------------
# ls -l /proc/(プロセス番号)/exe
-------------------------------------------------------------------------------------------
として、実行ファイルのシンボリックリンクを参照する。
※エディタで直接/proc/(プロセス番号)/exe にアクセスしてもバイナリファイルなので見れません。
結果↓
------------------------------------------------------------------------------------------
lrwxrwxrwx 1 hoge.hoge 0 2010-01-27 05:23
/proc/プロセス番号/exe -> /home/●●/hoge/○○○
------------------------------------------------------------------------------------------
つまり「●●」が犯人で「○○○」が問題のファイル。
あとは犯人に警告するなりプロセスをkillするなりご自由に。
まずtopコマンドやpsコマンドで、そのプロセスのプロセス番号を調べる。
-------------------------------------------------------------------------------------------
$ su
# top
-------------------------------------------------------------------------------------------
プロセス番号がわかったら、
-------------------------------------------------------------------------------------------
# ls -l /proc/(プロセス番号)/exe
-------------------------------------------------------------------------------------------
として、実行ファイルのシンボリックリンクを参照する。
※エディタで直接/proc/(プロセス番号)/exe にアクセスしてもバイナリファイルなので見れません。
結果↓
------------------------------------------------------------------------------------------
lrwxrwxrwx 1 hoge.hoge 0 2010-01-27 05:23
/proc/プロセス番号/exe -> /home/●●/hoge/○○○
------------------------------------------------------------------------------------------
つまり「●●」が犯人で「○○○」が問題のファイル。
あとは犯人に警告するなりプロセスをkillするなりご自由に。
