今日のパフォーマンスが悪いので、次のことを確認しましたtop
。
1 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
14229 myuser 20 0 8776 5264 1684 R 99 0.2 1383:47 bash
98-100% Bash プロセス使用量はずっと前に消えていなければなりません(確認するためにすべての端末を閉じました)。この問題の原因が何であるかよくわかりません。
$ lsof -p 14229
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bash 14229 myuser cwd DIR 0,23 4096 11059271 /home/users/myuser (company.com:/home/users/)
bash 14229 myuser rtd DIR 8,2 4096 2 /
bash 14229 myuser txt REG 8,2 920788 7617113 /bin/bash
bash 14229 myuser mem REG 8,2 30520 657679 /lib/i386-linux-gnu/libnss_compat-2.15.so
bash 14229 myuser mem REG 8,2 13940 657672 /lib/i386-linux-gnu/libdl-2.15.so
bash 14229 myuser mem REG 8,2 1713640 657666 /lib/i386-linux-gnu/libc-2.15.so
bash 14229 myuser mem REG 8,2 121024 660635 /lib/i386-linux-gnu/libtinfo.so.5.9
bash 14229 myuser mem REG 8,2 47040 657683 /lib/i386-linux-gnu/libnss_files-2.15.so
bash 14229 myuser mem REG 8,2 42652 657690 /lib/i386-linux-gnu/libnss_nis-2.15.so
bash 14229 myuser mem REG 8,2 134344 657659 /lib/i386-linux-gnu/ld-2.15.so
bash 14229 myuser mem REG 8,2 92016 657678 /lib/i386-linux-gnu/libnsl-2.15.so
bash 14229 myuser mem REG 8,2 2919792 7748495 /usr/lib/locale/locale-archive
bash 14229 myuser mem REG 8,2 26256 7757442 /usr/lib/i386-linux-gnu/gconv/gconv-modules.cache
bash 14229 myuser 0r CHR 136,1 0t0 4 /dev/pts/1 (deleted)
bash 14229 myuser 1w CHR 136,1 0t0 4 /dev/pts/1 (deleted)
bash 14229 myuser 2w CHR 136,1 0t0 4 /dev/pts/1 (deleted)
bash 14229 myuser 255u CHR 136,1 0t0 4 /dev/pts/1 (deleted)
これは、次の行を除いて/dev/pts
他のbashプロセスと同じです。
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bash 6674 myuser cwd DIR 0,23 4096 11059271 /home/users/myuser (company.com:/home/users/)
bash 6674 myuser rtd DIR 8,2 4096 2 /
bash 6674 myuser txt REG 8,2 920788 7617113 /bin/bash
bash 6674 myuser mem REG 8,2 1713640 657666 /lib/i386-linux-gnu/libc-2.15.so
bash 6674 myuser mem REG 8,2 121024 660635 /lib/i386-linux-gnu/libtinfo.so.5.9
bash 6674 myuser mem REG 8,2 47040 657683 /lib/i386-linux-gnu/libnss_files-2.15.so
bash 6674 myuser mem REG 8,2 13940 657672 /lib/i386-linux-gnu/libdl-2.15.so
bash 6674 myuser mem REG 8,2 30520 657679 /lib/i386-linux-gnu/libnss_compat-2.15.so
bash 6674 myuser mem REG 8,2 42652 657690 /lib/i386-linux-gnu/libnss_nis-2.15.so
bash 6674 myuser mem REG 8,2 92016 657678 /lib/i386-linux-gnu/libnsl-2.15.so
bash 6674 myuser mem REG 8,2 134344 657659 /lib/i386-linux-gnu/ld-2.15.so
bash 6674 myuser mem REG 8,2 2919792 7748495 /usr/lib/locale/locale-archive
bash 6674 myuser mem REG 8,2 26256 7757442 /usr/lib/i386-linux-gnu/gconv/gconv-modules.cache
bash 6674 myuser 0r CHR 136,2 0t0 5 /dev/pts/2
bash 6674 myuser 1w CHR 136,2 0t0 5 /dev/pts/2
bash 6674 myuser 2w CHR 136,2 0t0 5 /dev/pts/2
bash 6674 myuser 255u CHR 136,2 0t0 5 /dev/pts/2
標準がkill
機能しません:
$ kill 14229 && sleep 1m && kill -0 14229 && echo Alive
Alive
したがって、ps wafux
子プロセスはありません。
@ChandraRavooriが提案したように追跡してみてください。
$ sudo strace -p 14229
Process 14229 attached - interrupt to quit
それ以降は何の結果も出ません。何度も試してみましたが、kill 14229
毎回次のように印刷されました。
--- SIGTERM (Terminated) @ 0 (0) ---
その他の確認事項今後kill -9
?
答え1
努力する
strace -p 14229
プロセスから呼び出されたすべてのシステムコールを印刷します。これにより、このプロセスが実際に何をしているのかがわかります。
http://try-linux.blogspot.de/2013/12/how-to-strace-process.html
答え2
これを試したかどうかはわかりませんが、
ps xal
親プロセスIDを提供できます。
回復のために両親を殺すことができます。
PS:通常、bashはinitプロセスを親プロセスとして使用します。ここでも同様であれば、標準ソリューションであるCtrl + Alt + del(または再起動)だけで問題が解決されます。