답변:
ss
iproute2 패키지 (와 유사한 netstat
) 에서 사용할 수 있습니다 .
ss -l -p -n | grep "pid=1234,"
또는 (이전 iproute2 버전의 경우) :
ss -l -p -n | grep ",1234,"
1234를 프로그램의 PID로 바꾸십시오.
-u
또는 -t
단지 UDB 또는 TCP를 위해. : +1 : 그리고 이것들은 모두 다음과 같이 쌓을 수 있습니다 : ss -tlnp
, 그리고 채우기 너비 출력을 제거하기 위해 성가신 고양이 나 그 이하로 파이프 할 수 있습니다 :ss -tlnp | cat
ss -nlp | cat
대략, 청취 프로세스 (-l), 포트 번호 (-n) 및 프로세스 정보 (-p)를 보여주고 출력을 쉘에 맞추려고하지 않습니다 | cat
( 이하 또는 무엇이든). D
iproute2
도구를 사용하는 방법을 모릅니다. 그러나 해결 방법으로 이것을 시도해 볼 수 있습니다.
lsof -Pan -p PID -i
찾고있는 정보를 제공해야합니다.
산출
lsof -Pan -p 27808 -i
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd 27808 apache 5u IPv6 112811294 0t0 TCP *:80 (LISTEN)
httpd 27808 apache 7u IPv6 112811298 0t0 TCP *:8443 (LISTEN)
httpd 27808 apache 9u IPv6 112811303 0t0 TCP *:443 (LISTEN)
나는이 명령을 여기 에서 얻었 지만 노트북에 모두 적어 놓았으므로 정확한 링크를 확신하지 못합니다. 그러나 거기에서도 확인할 수 있습니다.
netstat
이를 위해 각 청취 프로세스의 pid를 파악할 수 있습니다 .
netstat-네트워크 연결, 라우팅 테이블, 인터페이스 통계, 가장 무도회 연결 및 멀티 캐스트 멤버쉽 인쇄
-a, --all 청취 및 비 청취 (TCP의 경우 설정된 연결을 의미 함) 소켓을 모두 표시합니다. --interfaces 옵션을 사용하여 표시되지 않은 인터페이스를 표시하십시오.
--numeric, -n 기호 호스트, 포트 또는 사용자 이름을 확인하는 대신 숫자 주소를 표시합니다.
-p, --program 각 소켓이 속하는 프로그램의 PID 및 이름을 표시합니다.
예를 들면 다음과 같습니다.
# netstat -anp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1507/rpcbind
tcp 0 0 0.0.0.0:51188 0.0.0.0:* LISTEN 1651/rpc.statd
tcp 0 0 0.0.0.0:1013 0.0.0.0:* LISTEN 1680/ypbind
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1975/sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1763/cupsd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2081/master
tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN 2119/mongod
tcp 0 48 172.16.33.73:22 172.16.127.110:51850 ESTABLISHED 25473/sshd
tcp 0 0 172.16.33.73:22 172.16.127.110:51214 ESTABLISHED 24699/sshd
tcp 0 0 :::111 :::* LISTEN 1507/rpcbind
tcp 0 0 :::9200 :::* LISTEN 1994/java
tcp 0 0 :::9300 :::* LISTEN 1994/java
tcp 0 0 :::22 :::* LISTEN 1975/sshd
tcp 0 0 ::1:631 :::* LISTEN 1763/cupsd
tcp 0 0 ::1:25 :::* LISTEN 2081/master
tcp 0 0 :::59162 :::* LISTEN 1651/rpc.statd
netstat
iproute2 도구에서 더 이상 사용되지 않는다는 알림 을 받았지만이 를 피하려고합니다.
@jofel의 대답 은 사용하기에 적합한 도구를 보여줍니다 ss
. iproute2의 다른 네트워킹 도구를 대체합니다.
더 이상 사용되지 않는 명령 및 해당 iproute2는 다음과 같습니다.
deprecated replacement(s)
========== ==============
- arp ip n (ip neighbor)
- ifconfig ip a (ip addr), ip link, ip -s (ip -stats)
- iptunnel ip tunnel
- iwconfig iw
- nameif ip link, ifrename
- netstat ss, ip route (for netstat-r), ip -s link (for netstat -i),
ip maddr (for netstat-g)
- route ip r (ip route)
: 기본 목록은 위키 백과에 여기에 있습니다 http://en.wikipedia.org/wiki/Iproute2 .
ss
넷 링크 소켓을 제외하고 PID에는 필터링이 없습니다.