GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo matar el proceso zombie

Un zombi ya está muerto, así que no puedes matarlo. Para limpiar a un zombi, debe ser atendido por su padre, por lo que matar al padre debería funcionar para eliminar al zombi. (Después de que el padre muera, el zombi será heredado por pid 1, que lo esperará y borrará su entrada en la tabla de procesos). Si su demonio genera niños que se convierten en zombis, tiene un error. Tu daemon debería notar cuando sus hijos mueren y wait sobre ellos para determinar su estado de salida.

Un ejemplo de cómo puede enviar una señal a cada proceso que es el padre de un zombi (tenga en cuenta que esto es extremadamente rudimentario y podría eliminar procesos que no desea. No recomiendo usar este tipo de mazo):

# Don't do this.  Incredibly risky sledge hammer!
kill $(ps -A -ostat,ppid | awk '/[zZ]/ && !a[$2]++ {print $2}')

Intenté:

ps aux | grep -w Z   # returns the zombies pid
ps o ppid {returned pid from previous command}   # returns the parent
kill -1 {the parent id from previous command}

esto funcionará :)


Lo encontré en http://www.linuxquestions.org/questions/suse-novell-60/howto-kill-defunct-processes-574612/

2) Aquí un gran consejo de otro usuario (Thxs Bill Dandreta):A veces

kill -9 <pid>

no matará un proceso. Ejecutar

ps -xal

el cuarto campo es el proceso principal, ¡mata a todos los padres de un zombi y el zombi muere!

Ejemplo

4 0 18581 31706 17 0 2664 1236 wait S ? 0:00 sh -c /usr/bin/gcc -fomit-frame-pointer -O -mfpmat
4 0 18582 18581 17 0 2064 828 wait S ? 0:00 /usr/i686-pc-linux-gnu/gcc-bin/3.3.6/gcc -fomit-fr
4 0 18583 18582 21 0 6684 3100 - R ? 0:00 /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.6/cc1 -quie

18581 , 18582 , 18583 son zombis -

kill -9 18581 18582 18583

no tiene efecto.

kill -9 31706

elimina a los zombis.


Puede limpiar un proceso zombi eliminando su proceso principal con el siguiente comando:

kill -HUP $(ps -A -ostat,ppid | awk '{/[zZ]/{ print $2 }')

Linux
  1. Cómo encontrar y matar el proceso Zombie en Linux

  2. ¿Qué son los procesos zombis y cómo encontrar y eliminar procesos zombis?

  3. Linux:Buscar y eliminar procesos zombis

  4. ¿Cómo configuro el directorio de trabajo del proceso principal?

  5. Cómo pausar/reanudar un proceso en Linux

Cómo matar procesos Zombie en Linux

Cómo encontrar y matar Procesos Zombie en CentOS 8

Cómo matar procesos Zombie en Ubuntu 20.04 LTS

Cómo matar el proceso de ejecución de Linux en un puerto particular

Cómo MATAR un proceso en Linux

Cómo matar procesos Zombie en Ubuntu