Nach einigen schlechten Leistungen heute habe ich überprüft 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% Nutzung durch einen Bash-Prozess, der vor langer Zeit hätte sterben sollen (ich habe gerade alle Terminals geschlossen, um dies zu überprüfen)? Ich bin mir nicht sicher, was es verursacht.
$ 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)
Mit Ausnahme der /dev/pts
Zeilen ist dies identisch mit anderen Bash-Prozessen:
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
Standard kill
funktioniert nicht:
$ kill 14229 && sleep 1m && kill -0 14229 && echo Alive
Alive
Demnach ps wafux
hat es keine untergeordneten Prozesse.
Versucht, es wie von @ChandraRavoori empfohlen zu verfolgen:
$ sudo strace -p 14229
Process 14229 attached - interrupt to quit
Danach bekomme ich keine Ausgabe mehr. Ich habe es kill 14229
mehrmals versucht und es wurde jedes Mal nur Folgendes gedruckt:
--- SIGTERM (Terminated) @ 0 (0) ---
Was sind andere Dinge zu überprüfen , bevorkill -9
?
bash
troubleshooting
l0b0
quelle
quelle
/home/users/myuser
Es sieht so aus, als ob es sich um ein NFS-Mount handelt, daher steckt der Bash-Prozess wahrscheinlich mit einem veralteten NFS-Handle für das CWD fest. War Ihr NFS-Server für eine Weile nicht erreichbar?Antworten:
Versuchen
Ich werde jeden Systemaufruf drucken, den der Prozess aufruft. Dann sehen Sie, was der Prozess tatsächlich tut.
http://try-linux.blogspot.de/2013/12/how-to-strace-process.html
quelle
Sie wissen nicht, ob Sie es bereits versucht haben, aber
ps xal
es kann Ihnen die übergeordnete Prozess-ID geben.Sie können den Elternteil töten, um sich davon zu erholen.
PS: Normalerweise hat bash den Init-Prozess als übergeordnetes Element. Wenn dies auch hier der Fall ist, kann dies nur mit der Standardlösung Strg + Alt + Entf (oder Neustart) behoben werden.
quelle