티끌모아부자

[HP-UX] 포트를 사용중인 프로세스 찾기 본문

IT-서버

[HP-UX] 포트를 사용중인 프로세스 찾기

실천합시다 2018. 4. 4. 11:29

어떤 프로세스에서 포트를 사용중인 것을 확인했는데, 어떤 프로세스에서 사용하는지 찾을 수가 없어서 찾는 방법을 남긴다..

구글링해보면 lsof , kdb, rmsock 등 명령어를 사용해서 찾는다고 나와있는데 

환경에는 해당 유틸리티가 설치가 안되어있다. 시스템담당자가 아니라 해당 유틸리티를 설치하기엔 과정이 너무 복잡했다.

답답해서 만들어 놓고 사용중이다. (사실 크게 쓸일은 많지 않은듯...)

간단한 쉘을 통해서 정보를 뽑아보는 방법이다.

사용하는 명령어는 ptree, pfiles이다.


port=$1

for pid in `ptree | grep -v ptree | awk '{print $1}'`

do

info=`pfiles $pid 2> /dev/null | grep port | grep /$port`

if [! -z "info" ]

then

echo $info

ps -ef | grep $pid | grep -v grep

fi

done


주의할 점은... 본인 소유의 프로세스가 아니면 pfiles 실행시에 에러가 난다.

스크립트 상에서는 에러는 안나지만 아무 정보도 출력이 되지 않는다.

그리고 예를들어 1000번 포트를 검색하는데 11000있으면 같이 나오니까 알아서 보완해서 쓰면됨.


* 보장은 못한다~ 테스트용~

Comments