[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: can't kill crashed processes



Benjamin Hornberger wrote:
At 11:11 AM 1/27/2005 -0800, you wrote:

Benjamin Hornberger wrote:

Hi all,
I have the problem that I can't kill certain frozen processes on RHEL AS 3. Somehow, up2date crashes each time when I try to run it from a Win XP machine tunneled through SSH (with Exceed running), and now I have three of these processes around.
[root host root]# ps -ef | grep up2date
root 3178 1 0 09:33 ? 00:00:05 /usr/bin/python -u /usr/sbin/up2date
root 3366 1 0 09:44 ? 00:00:05 /usr/bin/python -u /usr/sbin/up2date
root 6851 1 5 13:43 ? 00:00:05 /usr/bin/python -u /usr/sbin/up2date
root 6918 6871 0 13:45 pts/3 00:00:00 grep up2date
[root host root]# kill -9 3178
[root host root]# ps -ef | grep up2date
root 3178 1 0 09:33 ? 00:00:05 /usr/bin/python -u /usr/sbin/up2date
root 3366 1 0 09:44 ? 00:00:05 /usr/bin/python -u /usr/sbin/up2date
root 6851 1 4 13:43 ? 00:00:05 /usr/bin/python -u /usr/sbin/up2date
root 6920 6871 0 13:45 pts/3 00:00:00 grep up2date
[root host root]# kill -9 3366
[root host root]# ps -ef | grep up2date
root 3178 1 0 09:33 ? 00:00:05 /usr/bin/python -u /usr/sbin/up2date
root 3366 1 0 09:44 ? 00:00:05 /usr/bin/python -u /usr/sbin/up2date
root 6851 1 4 13:43 ? 00:00:05 /usr/bin/python -u /usr/sbin/up2date
root 6922 6871 0 13:45 pts/3 00:00:00 grep up2date
[root host root]#


Do a "ps -ax" and see if the processes are shown with "<defunct>".  If
so, they're zombies and you won't be able to get rid of them unless you
kill their parent process.  In your case, the parent process is "init"
(the master process) and the only way to kill init safely is to reboot.


[root host root]# ps -ax | grep up2date
 3178 ?        D      0:05 /usr/bin/python -u /usr/sbin/up2date
 3366 ?        D      0:05 /usr/bin/python -u /usr/sbin/up2date
 6851 ?        D      0:05 /usr/bin/python -u /usr/sbin/up2date
 7335 pts/13   S      0:00 grep up2date
[root host root]#

If I understand the ps man pages right, the "D" means "uninterruptible sleep", and not "defunct" (which would be "Z"). Anything else I can do?

You're right, Z is zombie, D is "deferred" (same as uninterruptible sleep). Processes in "D" state are generally waiting for some form of I/O. If they're there for a long time (and they've used 5 seconds of CPU--that's a lot!), then something evil happened and I consider them zombies, but they're orphaned zombies. You can't kill them as they're stuck in kernel land. You still have to reboot. Sorry. ---------------------------------------------------------------------- - Rick Stevens, Senior Systems Engineer rstevens vitalstream com - - VitalStream, Inc. http://www.vitalstream.com - - - - When in doubt, mumble. - ----------------------------------------------------------------------


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]