Bash no parece crear zombies. Parece que los procesos se cosechan de inmediato cuando los matan.
¿Puedo hacer bash hacer zombies?
Por qué estoy preguntando:
Me gustaría poder matar de manera segura un proceso secundario o de forma segura kill -9si no muere dentro de un cierto período de tiempo, pero no quiero eliminar accidentalmente un proceso que no es mi proceso secundario. Los procesos de zombis generalmente lo hacen muy fácil y seguro para las condiciones de carrera.

unsharepara crear un espacio de nombres PID, de modo que desde dentro de ese árbol de procesos, los procesos externos estén aislados e inaccesibles.kill -KILL %ndóndenestá el número de trabajo, etc.), en lugar de tratar de eludirlo.timeoutcomando?Respuestas:
Para hacer un proceso zombie:
Esto reemplaza el shell que se ejecuta
sleep 1con/bin/sleep 10eso no sabrá que elsleep 1proceso terminó, por lo que creará un zombie durante 10 segundos.No estoy seguro de qué esperas de matar un proceso zombie. Un proceso zombie ya estaba muerto, no puedes matarlo.
En realidad, puedes hacer que desaparezcan los procesos zombies, pero matando a su padre, no los procesos zombies mismos.
fuente
Respuesta no tan interesante:
fuente
$BASHPIDes$$, creo.$BASHPIDNo es lo mismo que$$. Trate siguiente código:echo $$ $BASHPID ;echo $(echo $$ $BASHPID). Puedes encontrar más información enman bash.