Je soupçonne qu'un programme écoute sur le port 8000
de ma machine.
Lorsque j'exécute la commande suivante, j'obtiens cette erreur:
> python -m SimpleHTTPServer
# Lots of python error
socket.error: [Errno 98] Address already in use
Si j'utilise un autre port ( 8000
par défaut), le serveur Web fonctionne correctement.
Si je cours wget localhost:8000
depuis la ligne de commande, cela retourne 404 Not Found
.
Que puis-je faire (ou quels outils sont disponibles) pour trouver quel programme écoute sur le port 8000
, et à partir de là où ce programme est configuré?
la source
-s TCP:LISTEN
limite le résultat au socket d'écoute réel et à son processus.PID 1889
? watVous pouvez utiliser netstat pour voir quel processus écoute sur quel port.
Vous pouvez utiliser cette commande pour avoir un détail complet:
si vous avez besoin de savoir exactement lequel écoute sur le port 8000, vous pouvez utiliser ceci:
Aucun processus ne peut se cacher de netstat.
la source
netstat -peanut
est plus facile à retenir quenetstat -taupen
!Pour expliquer la réponse de @ 33833, vous pouvez obtenir des informations très détaillées, par exemple:
Je peux voir ici que le calmar est le processus, mais c’est en fait le mien
squid-deb-proxy
qui prend le port.Un autre bon exemple d'application java:
Vous pouvez voir dans
lsof
(LiSt Open Files) qu'il s'agit de Java, ce qui est moins qu'utile. En exécutant laps
commande avec le PID, nous pouvons voir immédiatement qu’il s’agit de CrashPlan.la source
lsof -t -i :8000 | xargs ps -fp
sudo
mais après cela cela a fonctionné pour moi. Merci.sudo
erreur, vous n'obtiendrez rien en réponse.Essayez
ss
deiproute2
package:la source
ss
a aussi ses propres capacités de filtrage:ss -nlp '( sport = :8000 )'
.Une autre façon à l' aide
socklist
duprocinfo
package:man socklist
sudo socklist
la source
Vous pouvez utiliser nmap.
pour l'installer, appuyez simplement sur Ctrl+ Alt+ Tsur votre clavier pour ouvrir Terminal. Quand il s'ouvre, lancez la commande ci-dessous:
Pour plus d'informations sur nmap et d'autres utilitaires, cliquez ici.
1 Source: garron.me
la source
[nmap] tries to guess which service is listening on each port, but it can make mistakes
juste avant de suggérer une méthode réelle pour savoir quel processus est propriétaire du socket.