La mejor manera de matar procesos de estado Zombie y D en Linux

Respuestas:

19

Doble toque.

En realidad, reiniciar. No hay una forma real de deshacerse fácilmente de un zombie, pero realmente no hay razón para hacerlo porque un zombie no está consumiendo recursos en la computadora; Es una entrada huérfana en una tabla de proceso. Se supone que Init debe recopilarlo, pero algo salió mal con el proceso. http://en.wikipedia.org/wiki/Zombie_process

Tal vez estás preguntando porque hay un problema peor ... ¿estás recibiendo un montón de zombies vagando por tu mesa de procesos? Eso generalmente significa un error en el programa o un problema con una configuración. No deberías tener una gran cantidad de zombis en el sistema. Uno o dos no me preocupo. Si tienes cincuenta de ellos de Apache o algún otro demonio, probablemente tengas un problema. Pero eso no está directamente relacionado con su pregunta ...

Bart Silverstrim
fuente
1
hay alrededor de 10 procesos zombie
vnix27
¿Cuáles son los procesos?
Bart Silverstrim
15
/sbin/reboot

No puedes matar a un zombie, ya está muerto

Si el ppid todavía existe, entonces terminar eso a menudo puede limpiar a los zombis engendrados.

No debería matar procesos en modo de suspensión ininterrumpida; por lo general, esto significa que están vinculados a E / S, pero IIRC también puede ocurrir durante una lectura de bloqueo desde, por ejemplo, un zócalo de red.

symcbean
fuente
10

Los errores en el sistema de archivos o discos subyacentes pueden causar procesos vinculados de E / S. En este caso, intente "desmontar -f" el sistema de archivos del que dependen; esto anulará cualquier solicitud de E / S pendiente que esté abierta.

Arie Skliarouk
fuente
2
Y perder datos. No suena como una gran idea.
Michael Hampton
55
De todos modos, pierde datos al reiniciar. De esta manera, puede evitar el reinicio, característica útil en los sistemas de producción o desarrollo.
Arie Skliarouk
2
Gracias, esto funcionó por un problema que tuvimos con un script atascado al intentar acceder a un montaje NFS desaparecido durante semanas :)
BT643
1
Esto es exactamente lo que me está sucediendo a veces cuando hago el lscomando en un montaje s3fs. El lsproceso no matará incluso con kill -9hasta que fuerce el desmontaje con umount -l. ¿Alternativas para desmontar?
Marco Marsala
2
¡Ahora mi proceso de montaje está colgado como zombie STAT "D +"!
Curtis Yallop