Identificare e terminare i processi zombie su Linux
In generale, quando avviamo un programma, succede questo:
- viene avviato
- crea uno o più processi figlio
- svolge le sue operazioni
- al termine si chiude e libera le risorse usate
Il programma termina quando il padre legge il segnale di uscita dei suoi figli.
Che succede quando, per diversi motivi, il padre non riesce a leggere il segnale di uscita?
Si crea un cosidetto processo zombie!
In generale non dovrebbero occupare risorse, ma non è comunque un bene tenerli in vita.
(Detta così sembra un pò un film dell'orrore......).
Questo può succedere su qualsiasi OS ovviamente.
Noi vediamo come rintracciarli e terminarli su Linux.
Intanto possiamo visualizzarli (se ce ne stanno) usando il comando ps:
$ ps aux | grep Z
A questo punto prendiamo il PID di riferimento e usiamo kill:
$ kill -s SIGCHLD IL_VOSTRO_PID
Così terminare anche i figli.
Enjoy!
linux ps kill zombie
Commentami!