121 votes

Impossible d'arrêter le serveur rails

Je suis nouveau sur les rails et je suis en utilisant une machine ubuntu et le rubymine IDE. Le problème est que je suis incapable d'arrêter le serveur rails. J'ai essayé d'arrêter le serveur en tuant les rails le processus. Mais, lorsque j'exécute pgrep -l rails, aucun de ces processus est trouvé. Donc, je suis seulement capable de tuer ruby processus, mais le serveur ne s'arrêtent pas.

J'ai essayé d' ./script/server stop (depuis que j'ai commencé en cours d'exécution ./script/server start), mais, cela ne fonctionne pas. Googler autour et de trouver un stackoverflow messages, j'ai essayé de changer le localhost port d'écoute du port, mais sans succès. Quelqu'un pourrait-il aider?

286voto

Sri Points 1132

Vous pouvez utiliser d'autres ports comme suit:

rails server -p 3001

Normalement, dans votre terminal, vous pouvez essayer d' Ctrl + C d'arrêt du serveur.

L'autre façon de tuer le Ruby on Rails serveur par défaut (qui est - WEBrick) est:

kill -INT $(cat tmp/pids/server.pid)

Dans votre terminal pour trouver le PID du processus:

$ lsof -wni tcp:3000

Ensuite, utilisez le numéro dans la colonne PID pour tuer le processus:

Par exemple:

$ kill -9 PID

Et certains des autres réponses que j'ai trouvé est:

Pour arrêter le serveur rails alors qu'il est en cours d'exécution, appuyez sur:

CTRL-C
CTRL-Z

Vous obtiendrez contrôle bash. Tapez (sans l' $):

$ fg

Et cela va aller en arrière dans le processus, puis quittez Rails s correctement.

C'est un peu ennuyeux, mais ce que bat tuant le processus manuellement. C'est pas trop mal et c'est le meilleur que j'ai pu comprendre.

Mise à jour de réponse:

Vous pouvez utiliser killall -9 rails à tuer toutes les applications en cours d'exécution avec "rails" dans le nom.

killall -9 rails

49voto

maximus Points 2926

vous pouvez utiliser la commande grep de la manière suivante,

 ps aux | grep rails
 

et alors

 kill -9 {process_id} 
 

27voto

Vasu Akeel Points 338

pkill -9 rails pour tuer tout le processus de rails

13voto

user2055780 Points 1

Sur mon MAC, les killall -9 rails ne fonctionnent pas. Mais killall -9 ruby fait.

3voto

Gopal Rathore Points 1334

Utilisez ctrl+c pour éteindre votre serveur Webrick.

Malheureusement, si cela ne fonctionne pas, fermez avec force le terminal et redémarrez-le.

Une autre astuce est que

 1. open your system-monitor(a gui application) on ubuntu

2. Select processes tab 

3. Then look for a process having name 'ruby'

4. End that process
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X