Il browser Chrome non era reattivo e ho cercato di ucciderlo, ma invece di scomparire il processo aveva <defunct>
alla sua destra, e non è stato ucciso:
Che cos'è <defunct>
per un processo e perché non viene ucciso?
Il browser Chrome non era reattivo e ho cercato di ucciderlo, ma invece di scomparire il processo aveva <defunct>
alla sua destra, e non è stato ucciso:
Che cos'è <defunct>
per un processo e perché non viene ucciso?
Dal tuo output vediamo un "defunto", il che significa che il processo ha completato il suo compito o è stato danneggiato o ucciso, ma i suoi processi figli sono ancora in esecuzione o il processo padre sta monitorando il suo processo figlio. Per uccidere questo tipo di processo, kill -9 PID non funziona. Puoi provare ad ucciderli con questo comando ma lo mostrerà ancora e ancora.
Determina quale è il processo genitore di questo processo defunto e uccidilo. Per sapere questo eseguire il comando:
ps -ef | grep defunct
UID PID PPID C STIME TTY TIME CMD
1000 637 27872 0 Oct12 ? 00:00:04 [chrome] <defunct>
1000 1808 1777 0 Oct04 ? 00:00:00 [zeitgeist-datah] <defunct>
Quindi kill -9 637 27872
, quindi verifica che il processo defunto sia passato da ps -ef | grep defunct
.
Pagina di manuale ps (1) dice :
I processi contrassegnati
<defunct>
sono processi morti (i cosiddetti "zombi" ) che rimangono perché il loro genitore non li ha distrutti correttamente. Questi processi verranno distrutti dainit(8)
se il processo padre uscite.
Non puoi ucciderlo perché è già morto. L'unica cosa rimasta è una voce nella tabella dei processi :
Su sistemi operativi per computer Unix e Unix, un processo di zombi o il processo defunto è un processo che ha completato l'esecuzione ma ancora ha una voce nella tabella di processo. Questa voce è ancora necessaria per consentire il processo genitore per leggere lo stato di uscita del suo bambino.
Non c'è nulla di male nel lasciare che tali processi siano meno che non ce ne siano molti. Zombie viene infine raccolto dai suoi genitori (chiamando wait(2)
). Se il genitore originale non lo ha raccolto prima della sua uscita, allora il processo init
( pid == 1
) lo fa in un secondo momento. Zombie Process è solo:
Un processo che è terminato e che viene cancellato quando è in uscita è stato segnalato a un altro processo che è in attesa di tale processo per terminare.