Encontrar (y matar) el proceso que bloquea el puerto 3000 en Mac
¿Cómo puedo encontrar (y matar) los procesos que escuchan/utilizan mis puertos tcp? I'm en mac os x.
A veces, después de una caída o algún error, mi aplicación rails bloquea el puerto 3000. No puedo encontrarlo usando ps -ef...
Al hacer
rails server
Obtengo
Dirección ya en uso - bind(2) (Errno::EADDRINUSE)
Actualización de 2014:
Para completar algunas de las respuestas de abajo: Después de ejecutar los comandos kill, podría ser necesario borrar el archivo pid rm ~/mypath/myrailsapp/tmp/pids/server.pid
1565
3
Puedes probar con
netstat
.Para macOS El Capitan y posteriores (o si su netstat no soporta
-p
), utilicelsof
.Para Centos 7 utilice
Puede utilizar
lsof -i:3000
.Esto es "Listar archivos abiertos". Esto le da una lista de los procesos y qué archivos y puertos utilizan.
Esto le dará sólo el pid, probado en MacOS.