Zombies are taking over my computer
Solution 1:
I think your answer is integrated in Luis Alvarado's answer:
If you have zombie processes it means those zombies have not been waited for by their parent (look at PPID displayed by
ps -l
). You have three choices: Fix the parent process (make it wait); kill the parent; or live with it. Remember that living with it is not so hard because zombies take up little more than one extra line in the output ofps
.[...]Zombies that exist for more than a short period of time typically indicate a bug in the parent program. As with other leaks, the presence of a few zombies isn't worrisome in itself, but may indicate a problem that would grow serious under heavier loads.
To remove zombies from a system, the SIGCHLD signal can be sent to the parent manually, using the kill command. If the parent process still refuses to reap the zombie, the next step would be to remove the parent process. When a process loses its parent, init becomes its new parent. Init periodically executes the wait system call to reap any zombies with init as parent.
See also this post about how can you get rid of zombie processes.