5

Problem:
I was downloading a file over Transmission when I noticed that the Transmission window was grayed out and not responding. On clicking it, Ubuntu (10.04) asked to force-close which I did. What remains is a zombie process that uses 100% of 1 CPU, and that's pretty much stopping my little machine dead in its tracks. top and System Monitor look very much the same as the screenshots in this related question.

Steps taken:

  • I tried right-clicking the zombie in System Monitor and select "Kill" but nothing happened.
  • Rebooting seems to work, except that it happens again when I restart Transmission.
  • I see in System Monitor that it has a PID, 5 digits. I tried sudo kill {the PID} but nothing happened. (I don't know my way around Linux so I didn't try kill with any parameters.)
  • Now, I'm simply not starting Transmission again until I know how to deal with this.
  • I'm guessing that if I remove all Transmission downloads and reboot, then it would work again, perhaps until I try download some problematic file again?

Question:
It's clear that I can't kill this zombie without rebooting. (Or can I?) How can I avoid this zombie? What is causing Transmission to break down?

  • Update 1: I now tried sudo kill -9 {the PID} and it didn't seem to do anything. A minute later the zombie was gone, and the grey Transmission window too. I started Transmission again, and it seems to run now. Very odd?
  • Update 2: I just waited a looong time, and it seems to have cleared itself up. Wondering if perhaps I was just being impatient, but I thought that an Intel i5 with 2GB RAM ought to be able to handle simple browsing plus Transmission. Should I just delete this question? It seems to have imploded.
  • Update 3: This seems to be unrelated to number of downloads (I had only one active), and to rate limits (it happened in both cases). But it's difficult to give useful updates, as it seems to be working fine now. I'll reboot and start Transmission again, then see if it misbehaves again.

2 Answers2

1
sudo kill -9 {the PID}

That should do it. But use with care - could be leave the system in a messed up state as with that the process has no way to handle dying in any manner that would be graceful.

  • Ah, it seems my answer is exactly the same as what @Uku Loskit commented - well since they were at it first if they write that up as and answer (why whasn't that an answer in the first place?) by all means accept theirs instead of mine. If this solution works, of course. :) – Ilari Kajaste Jul 22 '11 at 12:05
  • Probably because kill -9 will not kill actual zombie processes. So, if kill -9 does work the question has slightly incorrect information. – user606723 Jul 22 '11 at 15:17
  • 1
    @user606723 Ah good point! Always happy to learn. – Ilari Kajaste Jul 22 '11 at 15:41
  • Sorry, "-9" didn't work either. (edit:) uh wait, maybe it did. See my update in the Q. – Torben Gundtofte-Bruun Jul 22 '11 at 16:11
-2

The command to kill a process that does not respond to a basic kill command is to force kill it with

$ killall process_name -KILL

This will terminate any zombies or any processes not responding to standard kill command.

Lev
  • 1
  • 1
    Not true. The killall function has the same effect as kill <pid> does. However, killall can process the names of processes, rather than the PIDs. That is the only difference between kill and killall – Thomas Ward Jul 22 '11 at 17:43