2010-12-02 3 views
2

Comment arrêter hg servir sous OS X (serveur 10.6)?stop hg servir sur os x

Je l'ai démarré depuis le terminal et non en mode démon. Cela a bien fonctionné, alors j'ai voulu faire quelques changements, donc j'ai fait ctrl-Z pour l'arrêter. Quand j'ai essayé de le démarrer à nouveau, il est dit ...

abort: cannot start server at ':8000': Address already in use 

Je suppose que le processus est déjà en cours d'exécution et n'a pas laissé partir du port. Mais dans le moniteur d'activité je ne peux pas trouver et "servir" ou "hg" ou "mercurial" des processus à tuer.

Aide?

Répondre

7

Effectuez les opérations suivantes pour savoir l'ID de processus:

hgt $ ps -eaf | grep hg 
    502 91004 90841 0 0:00.04 ttys007 0:00.11 /opt/local/Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python /opt/local/bin/hg serve 
    502 91032 90841 0 0:00.00 ttys007 0:00.00 grep hg 

tuer le processus

kill -9 91004 

l'emploi du temps suivant Ctrl-C pour arrêter le serveur. :)

+0

@nedlud: Avez-vous essayé? – pyfunc

+0

Merci pyfunc. C'était parfait. Deux leçons apprises ici: A) n'utilisez pas Ctrl-z, et B) en utilisant ps. – nedlud

+0

Il est préférable d'utiliser "kill " plutôt que "kill -9 " (comme kill -9 (SIGKILL) ne donnera pas au processus la possibilité d'intercepter le signal kill (et permettra au processus de s'arrêter correctement). .. ma valeur de 0,02 $ :-) – mlo55

2

Ctrl-Z arrête temporairement un processus. Si vous arrêtez quelque chose avec Ctrl-Z, vous pouvez le redémarrer en exécutant fg pour qu'il reprenne le terminal, ou bg pour qu'il s'exécute en arrière-plan du terminal. Sinon, vous pouvez tuer le serveur en utilisant la réponse de pyfunc. Vous pouvez savoir si le serveur fonctionne toujours en ouvrant localhost:8000 dans votre navigateur, bien sûr.

1

Vérifiez le port d'écoute généralement 8000 pour le serveur hg

sudo lsof -i -n -P | grep ECOUTER | grep 8000

Vérifiez le PID pour la recherche de hg pour hg puis python

ps -aef | grep hg | grep python | awk '{print $ 2}'

Tuez le PID que vous avez trouvé

kill -9 ` ps sudo -aef | grep hg | grep python | awk '{print $ 2}' `