Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

When login through a terminal into my Ubuntu 9.10 Server, I see the following message:

=> There is 1 zombie process.

How can I identify this zombie process?

share|improve this question
up vote 8 down vote accepted

Use the ps command. I almost always use ps auxwww.

$ ps auxwww
exegete  22199   0.0  0.2    79204   3280 s000  Z     9:16AM   0:00.78 vi
exegete  22185   0.0  0.0    75968    968 s000  S     9:16AM   0:00.01 -bash

According to the docs, a "Z" in the STAT column indicates a zombie process. Check the man pages: man ps

share|improve this answer
I used "ps l | grep Z" and killed the PPID. Killing the PID doesn't do the job, going after the parent does the trick. – Thierry Lam May 19 '10 at 21:11
You would likely have to use a kill -9, but even then zombies don't always respond. Sometimes you are forced to reboot. – Jack M. May 19 '10 at 21:12
Zombies are already dead, waiting for parent to read their status. Killing them, with any signal, doesn't do anything. It's not a process, just a process slot. Killing the parent (PPID) makes init (PID 1) the zombie's parent, which then reaps it (reads status) - zombie gone. – Rich Homolka Apr 20 '11 at 16:20
Sometimes I can't tell if I'm reading a Minecraft stack exchange, or Superuser. – MikeMurko Mar 2 '12 at 5:58

I often get that if I closed my SSH session without logging out, then logged back in before another process (init) adopted the processes that were running in the previous session.

However after a few minutes if you go back and do a top there will be no zombie processes.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .