netstat -tulpnw
Linux에서는 다음 과 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
#
ksh
AIX 6에서 사용할 때 포트에 바인드된 프로그램의 전체 경로를 어떻게 얻습니까?
답변1
~처럼IBM은 권장합니다: lsof -i -n
포트 XY를 사용하고 찾으십시오. 에서 구문 분석 가능한 출력을 원하는 경우 lsof
이 -F
플래그를 사용하고 awk를 사용하여 출력을 구문 분석하세요.
당신은 얻을 수 있습니다AIX V5용 사전 컴파일된 바이너리. V6용으로 미리 컴파일된 바이너리가 있는지는 모르겠습니다. 그렇지 않다면 다운로드하세요.원천그리고 그것을 컴파일하십시오.
답변2
netstat
와 함께 사용해 보세요 rmsock
.
port=$1
addr=`netstat -Aan | grep $port | awk '{print $1}`
pid=`rmsock $addr tcpcb | awk '{print $9}'`
ps -ef | grep $pid
의 경우 netstat
소켓 -A
과 관련된 프로토콜 제어 블록의 주소를 표시하고, 이 -a
옵션은 서버 프로세스의 상태를 포함하여 모든 소켓의 상태를 표시하며, 이 -n
옵션은 구문 분석에 시간을 낭비하지 않도록 숫자 형식으로 출력을 제공합니다. 주소.
rmsock
, 출력의 열 1에 지정된 주소를 사용 netstat
하고 tcpcb
데이터베이스를 사용하면 pid 및 이름을 포함하여 소켓을 보유하는 프로세스에 대한 정보가 반환됩니다.
ps -ef | grep $pid
그런 다음 를 사용하여 프로세스 정보를 얻을 수 있습니다 .
너는 볼 수있어이 기사이에 대한 자세한 내용을 보려면 IBM Systems Magazine을 방문하세요.
답변3
응용 프로그램이 잠긴 포트를 찾는 가장 빠른 방법 중 하나는 다음을 사용하는 것입니다.라소프또는lsof64:
lsof64 -nP | grep $PortNumber
또는
lsof -nP | grep $PortNumber
위의 내용은 주어진 포트 번호를 잠금/사용하는 프로세스 ID를 반환합니다. 일단 가지고 있으면 아래를 실행하여 실행 중인 응용 프로그램/프로세스를 찾으십시오.
proctree $pid
답변4
netstat -ape | grep $PortNumber