Tratar:
sudo lsof -n -i :8080 -s TCP:LISTEN
Las dos primeras columnas serán el nombre y el PID del proceso que se escucha en el puerto 8080.
Use el PID para encontrarlo en el Monitor de actividad, Obtener información y observe qué archivos tiene abiertos. Tendrá un montón de bibliotecas abiertas, pero en lo alto de la lista estará el archivo ejecutable.
Alternativamente, desde el nombre, vea a qué servicio corresponde
sudo launchctl list | grep theprocessname
Por ejemplo, si el nombre fuera httpd
, el comando anterior le indicaría el nombre del servicio org.apache.httpd
. Si no obtienes ningún éxito (porque no se está ejecutando como un demonio), pruébalo sin él sudo
.
Solicite launchctl para obtener más información sobre ese servicio. Continuando usando Apache como ejemplo:
sudo launchctl list org.apache.httpd
te diría
{
"LimitLoadToSessionType" = "System";
"Label" = "org.apache.httpd";
"TimeOut" = 30;
"OnDemand" = false;
"LastExitStatus" = 0;
"PID" = 39660;
"Program" = "/usr/sbin/httpd";
"ProgramArguments" = (
"/usr/sbin/httpd";
"-D";
"FOREGROUND";
);
};
Observe la línea "Programa", que le proporciona la ruta al ejecutable. La mayor parte de esa información proviene de /System/Library/LaunchAgents/org.apache.httpd.plist, que es el archivo que le dice a Launch Services cuándo ejecutar el programa y cómo.
Su servidor web, que escucha en el puerto 8080, no es de Apple, por lo que no estará en / System / Library. Mire en / Library / LaunchDaemons, o tal vez incluso en ~ / Library / LaunchAgents (si se ejecuta solo cuando está conectado). (Escuchar en el puerto 8080 no requiere privilegio de root, por lo que posiblemente podría ejecutarse como usted, aunque eso tiene implicaciones de seguridad interesantes).
Otro lugar para buscar es Preferencias del sistema → Usuarios y grupos → Elementos de inicio de sesión. Como no sabemos cómo configurarlo para que se ejecute automáticamente, es posible que no lo haya hecho colocando un archivo en cualquiera de los directorios ... Biblioteca / Lanzamiento *.