AIX에서 포트에 바인딩 된 프로그램의 전체 경로를 얻으려면 어떻게해야합니까?


14

리눅스에서 나는 다음 netstat -tulpnw과 ps같이 사용할 수 있습니다 :

# netstat -tulpnw | grep :53
tcp        0      0 127.0.0.1:53                0.0.0.0:*                   LISTEN      1482/named          
udp        0      0 127.0.0.1:53                0.0.0.0:*                               1482/named          

# ps aux | fgrep 1482
named     1482  0.0  1.0  93656 44900 ?        Ssl  Sep06   3:17 /usr/sbin/named -u named
root     20221  0.0  0.0   4144   552 pts/0    R+   21:09   0:00 fgrep --color=auto 1482
# 

kshAIX 6에서 사용할 때 포트에 바인딩 된 프로그램의 전체 경로를 얻으려면 어떻게 해야합니까?

답변:


10

IBM이 권장하는 대로 : lsof -i -n포트 XY를 사용 하고 찾으십시오. 의 구문 분석 가능한 출력을 원하면 플래그를 lsof사용하여 -Fawk로 출력을 구문 분석하십시오.

AIX V5 용 사전 컴파일 된 바이너리를 얻을 수 있습니다 . V6 용 사전 컴파일 된 바이너리가 있는지 모르겠습니다. 없는 경우 소스를 가져 와서 컴파일하십시오.


lsof를가 AIX에 항상 사용할 수 없습니다 : P
— LanceBaynes

2
따라서 다운로드 하거나 소스 에서 컴파일하십시오 . IBM 이 권장합니다 .
— Gilles 'SO- 악마 그만'

기계에 항상 "lsof"가있는 것은 아니지만 ... 나는 이것을 좋은 대답으로 받아 들일 수 있습니다 (다른 것들도 "좋은"것입니다! ty)
— LanceBaynes

4

netstat와 함께 사용해보십시오 rmsock.

port=$1
addr=`netstat -Aan | grep $port | awk '{print $1}`
pid=`rmsock $addr tcpcb | awk '{print $9}'`
ps -ef | grep $pid

를 들어 netstat1, -A쇼 소켓과 연관된 모든 프로토콜 제어 블록의 주소는 -a옵션 프로그램 서버 프로세스를 포함한 모든 소켓 및 상태 -n옵션을 사용하면 해결 주소하려고 시간을 낭비하지 않는, 그래서 숫자 형태로 출력을 제공 .

rmsock의 column1 출력에 제공된 주소 netstat와 tcpcb데이터베이스를 사용 하여 pid 및 이름을 포함하여 해당 소켓을 보유하는 프로세스에 대한 정보를 리턴합니다.

그런 다음 ps -ef | grep $pid프로세스 정보를 얻는 데 사용할 수 있습니다 .

이에 대한 자세한 정보는 IBM Systems Magazine 에서이 기사 를 볼 수 있습니다 .


이것은 AIX에서 올바르게 실행되는 이벤트가 아닙니다
— Kiwy

1

응용 프로그램 잠금 포트를 찾는 가장 빠른 방법 중 하나는 lsof 또는 lsof64 를 사용하는 것입니다 .

lsof64 -nP | grep $PortNumber

또는

lsof -nP | grep $PortNumber

위는 주어진 포트 번호를 사용하여 프로세스 ID 잠금을 반환합니다. 그런 다음 아래에서 실행하여 실행중인 응용 프로그램 / 프로세스를 찾으십시오.

proctree $pid

0

AIX에 익숙하지 않지만, w또는에 대한 e형식 인수를 시도 ps했습니까?

ps uwx | grep 1482
# or 
ps uex | grep 1482

온라인 설명서 를 확인할 수 있습니다 . AIX ps는 전통적인 BSD 플래그를 지원하지만 지정한 플래그가 어떻게 도움이됩니까?
— Gilles 'SO- 악의를 멈춰라'

흠, 그들은 AIX에서 다른 일을하는 것처럼 보입니다. 당신이 참조 문서는 L 옵션이 포함되어 있지만 어떤 인쇄 "USER, PID %의 CPU, %의 MEM, SZ, RSS, TTY, STAT, STIME, TIME, 및 COMMAND 필드"
— frogstarr78

0
netstat -ape | grep $PortNumber

명령이 수행하는 작업을 설명해 주시겠습니까? 정당화없이 코드를 붙여 넣는 것은별로 도움이되지 않습니다.
— n0pe
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.