Solaris 청취 포트에서 PID를 가져올 수 없습니다.

Solaris 청취 포트에서 PID를 가져올 수 없습니다.

저는 솔라리스를 사용하고 있어요

SunOS myhost4 5.11 11.4.42.117.3 sun4v sparc sun4v non-global-zone

텔넷이 다음과 같이 성공하기 때문에 포트 7777이 사용 중이라고 확신합니다.

$ telnet myhost4 7777
Trying 10.23.52.219...
Connected to myhost4.mybank.com.
Escape character is '^]'.

아래 스크립트는 작동하며 대부분의 포트에 대한 PID를 제공합니다.

고양이 getpidfromport.sh

#!/bin/bash
# $1 is the port we are looking for

if [ $# -lt 1 ]; then
echo "Please provide a port number parameter for this script"
echo "e.g. $0 1521"
exit
fi

echo "Greping for your port, please be patient (CTRL+C breaks)..."

for i in `ls /proc`
do
pfiles $i 2>/dev/null | grep AF_INET | grep -w $1
if [ $? -eq 0 ]; then
echo Is owned by pid $i
echo ----
fi
done

하지만 포트 7777을 전달하면 해당 포트를 사용할 수 있는 PID가 제공되지 않습니다.

./getpidfromport.sh 7777
No results found!!

포트 7777을 사용하여 PID를 얻는 방법을 제안해 주실 수 있나요?

답변1

이러한 유형의 스크립트의 경우 사용자가 완료 /proc할 수 있는 파일 시스템에 대한 액세스가 필요합니다. root노력하다:

sudo ./getpidfromport.sh 7777

관련 정보