Sospecho que un programa está escuchando en el puerto 8000 en mi máquina.
Cuando ejecuto el siguiente comando, aparece este error:
> python -m SimpleHTTPServer# Lots of python errorsocket.error: [Errno 98] Address already in use
Si uso otro puerto (8000 es el valor predeterminado), el servidor web funciona bien.
Si corro wget localhost:8000 desde la línea de comandos, devuelve 404 Not Found.
Qué puedo hacer (o qué herramientas están disponibles) para encontrar qué programa está escuchando en el puerto 8000, y a partir de ahí donde se configura ese programa?
ese comando le mostrará la aplicación utilizada por ese puerto con PID.(Si no hay resultados, ejecute via sudo ya que es posible que no tenga permiso para ciertos procesos.)
Por ejemplo, con el puerto 8000 (python3 -m http.server):
$ lsof -i :8000COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEpython3 3269 user 3u IPv4 1783216 0t0 TCP *:8000 (LISTEN)
Se puede ver en lsof (Enumere los archivos abiertos) que es Java, lo cual es menos que útil. Ejecutando el ps comando con el PID podemos ver enseguida que es CrashPlan.
descripción socklist es un script de Perl que le proporciona una lista de todos los sockets abiertos, enumerando los tipos, el puerto, el inodo, el uid, el pid, el fd y el programa al que pertenece.
Debido al bajo nivel de la comunidad, no puedo comentar aquí. Sin sudo todos los comandos anteriores no le proporcionarán Id de proceso / Nombre de programa.
Por lo tanto, necesita las siguientes cosas:
sudo lsof -i :8000
o
sudo netstat -lntup
puede verificar esos detalles de comando a través de man, help o mi ayudante favorito
Es realmente importante saber qué puertos están abiertos en su PC, esto no solo es útil para Linux, sino también para otros sistemas operativos, Linux tiene muchas herramientas para verificar qué puertos están abiertos, la más común es nmap, que es una herramienta de línea de comandos, pero también existe una interfaz gráfica si lo prefiere de esa manera.1
para instalarlo, simplemente presione Ctrl+Alt+T en el teclado para abrir Terminal. Cuando se abra, ejecute el siguiente comando:
sudo apt-get install nmap
Para obtener más información sobre nmap y otras utilidades, vaya a Aqui