Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how to get process id attached with particular port in sunos

I am trying to get processes attached with a port 7085 on SunOS. i tried following commands.

netstat -ntlp | grep 7085 didn't return anything

netstat -anop | grep 7085 tried this one also. This switches are not valid in SunOs

I am getting the following output.

#netstat -anop

netstat: illegal option -- o

usage: netstat [-anv] [-f address_family]

netstat [-n] [-f address_family] [-P protocol] [-g | -p | -s [interval [count]]]

netstat -m [-v] [interval [count]]

netstat -i [-I interface] [-an] [-f address_family] [interval [count]]

netstat -r [-anv] [-f address_family|filter]

netstat -M [-ns] [-f address_family]

netstat -D [-I interface] [-f address_family]

The version of SunOS is SunOS 5.10. I believe netstat is the only command can do this.

What is the exact switches for netstat which will give me the process id attached with port?

like image 823
LOGAN Avatar asked Nov 06 '12 07:11

LOGAN


People also ask

How do I find the process ID of a particular process?

A PID is automatically assigned to each process when it is created. A process is nothing but running instance of a program and each process has a unique PID on a Unix-like system. The easiest way to find out if process is running is run ps aux command and grep process name.


2 Answers

pfiles /proc/* 2>/dev/null | nawk '
/^[0-9]*:/ { pid=$0 }
/port: 7085$/ { printf("%s %s\n",pid,$0);}'
  • pfiles /proc/* is retrieving all processes file descriptors details
  • 2>/dev/null is dropping out errors due to transient processes died in the meantime
  • each line starting with a number followed by a colon reports the process id and details, it is stored in the awk pid variable
  • when a line ends with the string port: <portnumber> (here is 7085), the corresponding pid variable is displayed.

Note: you need the required privilege(s) to get port information from processes you do not own (root has all privileges).

like image 124
jlliagre Avatar answered Oct 01 '22 01:10

jlliagre


Have a look on lsof http://linux.about.com/library/cmd/blcmdl8_lsof.htm command.

This command describes which processes are using which file descriptors. Remember that anything on port 7085 will have its own file descriptor which you can use to trace back to the process using it.

I would try something like:

$ lsof -i :7085

Hope it can help.

like image 28
andrefsp Avatar answered Oct 01 '22 00:10

andrefsp