Questão Encontrando o processo que está usando uma determinada porta no Linux


Gostaria de poder descobrir qual processo está atualmente usando uma determinada porta no Linux. Há alguma maneira de fazer isso?


127


origem


No Windows, o comando é: netstat -anb - djangofan


Respostas:


Você tem algumas opções:

lsof -i tcp:80

lhe dará a lista de processos usando a porta TCP 80.

Alternativamente,

sudo netstat -nlp

lhe dará todas as conexões de rede abertas.


130



lsof -i | grep {username} também é muito útil, por exemplo lsof -i | grep apache - LawrenceC
@nagul: Você senhor, é um herói. - Abe Petrillo
Para quem quer saber -n : não resolva nomes, -l : exibir soquetes do servidor de escuta, -p : exibe PID / nome do programa para soquetes. - yellavon
Eu costumo adicionar -P para lsof -i tcp:$PORTNUMBER de modo que a porta seja impressa de volta para mim como um número. - js.


netstat -lp

9



no mac você tem que adicionar uma opção de protocolo para -p. então algo como: netstat -lp tcp. - vrish88
No linux, -p lista o processo que possui o socket. - Jürgen Strobel


Eu estou usando "CentOS 7 minimal" que não tem netstat nem lsof. Mas muitas distribuições de Linux têm o comando de estatísticas de soquete (ou seja, ss).

Aqui está um exemplo de execução:

# ss -tanp | grep 6379
LISTEN   0    128  127.0.0.1:6379   *:*   users:(("redis-server",pid=2531,fd=4))

6





No Linux, Para encontrar um processo em execução em uma porta, faça o seguinte:

lsof -i :<port_number>

exemplo:

lsof -i :8080

2



Obrigado por tentar ajudar. Este comando foi mencionado na resposta aceita. Se você tiver algo novo, edite sua postagem. - Ben N