Torres de alta tensión: la dirección ya está en uso cuando se trata de servir
Pregunta
Estoy corriendo pilones y me hizo esto: development.ini servidor de parche Se está ejecutando en: 5000
Pero cuando trato de ejecutar el comando: parche servir development.ini
Me sale este mensaje: socket.error: [Errno 98] Dirección ya en uso
¿Alguna idea?
Solución
Normalmente, eso significa que aún en marcha, pero que sólo debería ocurrir si está en modo demonio. Después de que lo inició, hacer llegar un símbolo del sistema, o tiene que parar con Ctrl-C?
Si recibe un aviso de comando de vuelta es el modo demonio y hay que detenerlo con
paster server development.ini stop
Si ha dejado con Ctrl-C (y no Ctrl-Z, por supuesto), no tengo ni idea.
Otros consejos
He encontrado este truco en un foro:
Esto matará a todos los programas de escuchar el puerto 5000
kill -9 `fuser -n tcp 5000`
Como entiendo su pregunta, se inicia alguna aplicación para escuchar en el puerto 5000. A continuación, sin detenerlo (?), Intenta iniciar otra instancia para escuchar en el mismo puerto het? Si es así, usted no tendrá éxito.
Siempre puede comprobar qué aplicación está escuchando en el puerto serie lo que mediante el uso de netstat
(para sistemas Windows y UNIX, no tengo experiencia con los demás).
Esto también me ha pasado cuando el servidor murió inesperadamente, y no cerró su toma de forma adecuada. En esencia, la toma sigue apareciendo como abierta con el sistema operativo, a pesar de que el proceso ha muerto. He encontrado si espero durante 30-60 segundos, el sistema operativo va a realizar el proceso asociado ha muerto, y las tomas de limpieza automática.
el puerto por defecto 8080 está utilizando. se debe añadir '-p 10000' tras la orden de tomar el puerto 10000
natural netstat
(netstat -an | grep 5000
hace el truco en Linux). Se agarra el puerto
Sin embargo, me encontré con esta otra pregunta con el mismo error.
Python [Errno 98] Dirección ya en uso
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
En esencia Python toma demasiado tiempo para abrir el zócalo.
He intentado todas las respuestas upvoted existe aquí, pero nadie trabaja para mí. Pero esto más adelante comando hace el truco.
sudo kill $(sudo lsof -t -i:5000)
Esto sería matar el proceso que escucha en el puerto 5000
.