특정 프로세스 이름의 네트워크 상태 찾기

특정 프로세스 이름의 네트워크 상태 찾기

나는 명령줄을 통해 지정된 프로그램 이름에서 사용되는 포트의 포트 상태를 찾기 위해 Linux에서 가장 깨끗한 방법을 찾고 있습니다. 나는 netstat -p가 모든 pid를 나열하지만 특정 프로세스 이름에 해당하는 것을 보지 못했다는 것을 보았습니다. 어떤 도움이라도 주시면 감사하겠습니다.

답변1

이론적으로는 -p 매개변수와 PID가 포함된 프로그램 이름이 표시되어야 합니다. 사용자로 실행되고 있지 않은 프로세스의 프로그램 이름을 표시하려면 루트 권한이 필요합니다.

-p 루트 권한이 없는 경우:

$ netstat -lnp
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      -               
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN      -               
...
...

-p 루트 권한이 있음

$ sudo netstat -lnp
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1553/apache2    
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN      1392/vsftpd     
...
...

관련 정보