Killing a zombie process

Print
On unix-based systems, a zombie process or defunct process is a process that has completed execution but still has an entry in the process table. You can read more about it on wikipedia.

# ps aux | awk '{ print " " }' | grep -w Z

This will give you an output similar to the one below:

Z 8954

In order to kill it, you will have to find the parent process.

root   8954  5265  0 07:19 ?        00:00:00 rpcss <defunct>

The process that needs to be killed is the parent process - which is 5265. Killing it with

kill -9 5265

will get rid of the parent and the zombie process.

This is not recommended - the best way to get rid of zombie processes is to reboot the system.

Linux
Comments (1)
a zombie or defunct process is not a process
1 Wednesday, 17 November 2010 20:28
webreac
It is only an entry in the process table that remains there untill the parent process reads the exit value of its dead child.

These kind of entries appears when the parent process behaves badly. Killing it is probably the right thing to do, but you should first understand the purpose of the process you want to kill.

Rebooting the system is a poor advice.
yvComment v.1.24.0