Localizando o processo que está usando uma certa porta no Linux


139

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


3
No Windows, o comando é: netstat -anb
djangofan 11/12/2009

Respostas:


144

Você tem algumas opções:

lsof -i tcp:80

fornecerá a lista de processos usando a porta 80 do tcp.

Alternativamente,

sudo netstat -nlp

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


2
lsof -i | grep {username}também é muito útil, ielsof -i | grep apache
LawrenceC

1
Para quem se perguntar -n:: não resolva nomes -l,: exiba soquetes do servidor de escuta,: -pexiba nome do PID / programa para soquetes.
Yellavon

Eu costumo adicionar -Ppara lsof -i tcp:$PORTNUMBERque a porta seja impressa de volta para mim como um número.
js.

9
netstat -lp

4
no mac, você precisa adicionar uma opção de protocolo ao -p. então algo como: netstat -lp tcp.
vrish88

8

Eu estou usando "CentOS 7 mínima", que tem nem netstatnem lsof. Mas muitas distribuições linux têm o comando socket statistics (ie 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))

2

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

lsof -i :<port_number>

exemplo:

lsof -i :8080

Obrigado por tentar ajudar. Este comando foi mencionado na resposta aceita. Se você tem algo novo, edite sua postagem.
Ben N
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.