Linux에서 특정 포트를 사용하는 프로세스 찾기


139

현재 Linux에서 특정 포트를 사용하는 프로세스를 찾을 수 있기를 원합니다. 이것을 할 수있는 방법이 있습니까?


3
Windows에서 명령은 다음과 같습니다. netstat -anb
djangofan

답변:


144

몇 가지 옵션이 있습니다.

lsof -i tcp:80

tcp 포트 80을 사용하는 프로세스 목록을 제공합니다.

또는

sudo netstat -nlp

모든 개방형 네트워크 연결을 제공합니다.


2
lsof -i | grep {username}또한 매우 유용합니다lsof -i | grep apache
LawrenceC

1
궁금한 사람은 -n: 이름을 확인하지 않음 -l: : 청취 서버 소켓 -p표시 : : 소켓의 PID / 프로그램 이름을 표시합니다.
yellavon

나는 보통 포트를 숫자로 다시 인쇄하도록 추가 -P합니다 lsof -i tcp:$PORTNUMBER.
js.


8

나는이 아니다 "CentOS는 최소 7"사용하고 netstat어느 쪽도 lsof. 그러나 많은 Linux 배포판에는 socket statistics 명령 (예 :)이 ss있습니다.

실행 예는 다음과 같습니다.

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

2

Linux에서 포트에서 실행중인 프로세스를 찾으려면 다음을 수행하십시오.

lsof -i :<port_number>

예:

lsof -i :8080

도와 주셔서 감사합니다. 이 명령은 허용 된 답변에서 언급되었습니다. 새로운 것이 있으면 게시물을 수정하십시오.
벤 N
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.