2009-07-01 4 views
3

zu dienen ich Pylonen renne und ich habe dies: Paster Server development.ini Es läuft auf: 5000Pylons: Adresse im Einsatz bereits bei dem Versuch,

Aber wenn ich versuche, wieder den Befehl auszuführen: Paster dienen development.ini

ich diese Meldung: socket.error: [Errno 98] Adresse bereits in Gebrauch

Irgendwelche Ideen?

Antwort

3

Normalerweise bedeutet das, dass es immer noch läuft, aber das sollte nur passieren, wenn es im Daemon-Modus ist. Haben Sie nach dem Start eine Eingabeaufforderung erhalten oder müssen Sie sie mit Strg-C stoppen?

Wenn Sie eine Eingabeaufforderung zurück es deamon-Modus ist, und Sie haben ihn zu stoppen mit

paster server development.ini stop 

Wenn Sie es mit Strg-C (und nicht Strg-Z natürlich) gestoppt habe, habe ich keine Idee.

2

Wie ich Ihre Frage verstehe, starten Sie einige Anwendung auf Port 5000 zu hören. Dann ohne es zu stoppen (?), Versuchen Sie, eine andere Instanz zu starten, um auf dem gleichen Port zu hören? Wenn das der Fall ist, werden Sie keinen Erfolg haben.

Sie können immer überprüfen, welche Anwendung auf welcher Portnummer abhört, indem Sie netstat verwenden (für Windows- und UNIX-ähnliche Systeme habe ich keine Erfahrung mit anderen).

+0

+1 für die Informationen über Netstat. –

1

Das ist mir auch passiert, als der Server unerwartet starb und seinen Socket nicht richtig schloss. Im Wesentlichen wird der Socket immer noch als mit dem Betriebssystem geöffnet aufgeführt, obwohl der Prozess beendet wurde. Ich habe gefunden, wenn ich 30-60 Sekunden warten werde, wird das OS erkennen, dass der zugehörige Prozess gestorben ist, und die Steckdosen automatisch aufräumen.

0

Ihr Standardport, den 8080 verwendet. Sie sollten '-p 10000' nach Befehl hinzufügen Port 10000

15

zu nehmen habe ich diesen Trick in einem Forum gefunden:

Dies wird alle Programme auf Port 5000

hören töten
kill -9 `fuser -n tcp 5000` 
+0

Sneaky, danke! – jon

+2

Sie können dasselbe mit 'fuser 5000/tcp -k' erreichen –

0

natürlich netstat (netstat -an | grep 5000 macht den Trick auf Linux). Will den Port

greifen Aber ich habe diese andere Frage mit dem gleichen Fehler gefunden.

Python [Errno 98] Address already in use

sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) 

Im Wesentlichen Python zu lange dauert, den Sockel zu öffnen.

0

Ich habe versucht, alle uploged Antworten gibt es hier, aber niemand arbeitet für mich. Aber dieser Befehl macht den Trick.

sudo kill $(sudo lsof -t -i:5000) 

Dies würde den Prozess beenden, die 5000 auf dem Port lauscht.

Verwandte Themen