Can't stop webrick with ctrl-c or ctrl-d on linux host

Hi All

I have setup a new dev system running LinuxMint 9 (Ubuntu 10.4). Running ruby 1.9.2, rails 3.0, RVM etc.

One issue I have run into is that I can’t stop webrick with ctrl+c or ctrl+d and killing the terminal always leaves a stranded ruby process.

Has anybody else run into this? Btw, webrick gets started by running “rails s” in.

Also, ctrl+c works fine to stop a standalone ruby or python apps. I can also exit irb with ctrl+d fine.

Anyhow, any help would be appreciated.

Thanks

Raf

use ctrl + z

Thanks, that ACTUALLY worked :wink:

The question is why does ctrl+z work and ctrl+c not?

Raf

Spoke too soon. Ctrl+z stops the server script but the ruby process that listens on 3000 hangs around. After using ctrl+z, I can’t restart the server because the default port is still in use.

Raf

Ok, I started experimenting with different key combinations and it seems that ctrl+alt+c does the trick.

Raf

Rafael Szuminski wrote:

Spoke too soon. Ctrl+z stops the server script but the ruby process that listens on 3000 hangs around. After using ctrl+z, I can't restart the server because the default port is still in use.

Right -- because C-z only *suspends* the process and does not kill it. When you hit C-z, you will see a message that begins like [1]+ Stopped

The number in brackets is the job number. To kill the process, type kill -9 %{JOB} at the shell prompt, where {JOB} is the job number -- so in this example, it would be kill -9 %1 .

I've never seen this with Webrick, but sometimes Autospec responds to C-z and not to C-c. The method I just described is useful.

If any of this is mysterious to you, please read a little about how processes work on *nix.

Raf

Best,

oops sorry for not replying. hope you got the answer :slight_smile: