Como matar (kill) un proceso defunct
Los procesos defunct son procesos que se han corrompido de forma que ya no es posible la comunicación (no es la palabra correcta, ya que son señales las que se envían entre procesos) con su proceso padre o su proceso hijo. Así que matar (kill) al padre o al hijo en un 99% hará que el proceso defunct desaparezca. Sin procesos padre o hijo, corremos sin suerte.
aweba:/# ps -ef | grep -v \ \ root | grep -v pts/ | less
UID
| PID | PPID | C | STIME | TTY | TIME CMD | |
xxxxxx
|
168
|
1
| 0 | Jan 13 | ? | 0:00 /usr/lib/nfs/statd | |
yyyy
|
28835
|
28789
| 0 | Apr 07 | ? | 2:05 xbiff++ | |
zzz
|
13868
|
1
| 0 | 0:00 <defunct> | |||
aaaa
|
24724
|
24721
| 0 | Apr 02 | ? | 0:02 /usr/openwin/bin/xload -hl red -g | |
eom +396+26
| |||||||
nnnn
|
28789
|
28786
| 0 | Apr 07 | ? | 0:00 /pkg/local/bin/tcsh -c xbiff++ |
Ahora usamos /usr/proc/bin/ptree para encontrar el padre o el hijo. Los usuarios de Linux pueden tratar con ps -ef –forest | less
aweba:/# /usr/proc/bin/ptree 13868
13868 <defunct>
16596 a.out
aweba:/# kill -9 16596
13868 <defunct>
16596 a.out
aweba:/# kill -9 16596
Listo!!
o
bash# /usr/proc/bin/ptree `ps -ef | grep -v ^\ \ \ \ root | awk ‘/<defunct>/ {print $2}’` | less
Comentarios
Publicar un comentario