I have an ultra old (don't ask why) BusyBox (BusyBox v1.01 (2008.12.19-21:31+0000) Built-in shell (ash)) on my DreamBox. I would like to find out which process opened which connection using netstat. But I found out that BusyBox's netstat doesn't contain the -p option. What other possibilites do I have to find out which process has opened (and is using) the corresponding socket?
Linux – Busybox, netstat, no -p
busyboxembedded-linuxlinuxlinux-networking
Best Answer
You can find the equivalent information in slightly uglier form (a.k.a. hexadecimal) in
/proc/net/tcp
. There, you can find the inode of the connection, which you can look up under/proc/$pid/fd/
.For example:
(In normal netstat, but not in busybox netstat, the
-e
option also gives you that extra information.)You can find the process which corresponds to the inode with the following command:
You need root access for the second step.
Not as convenient as the
-p
option, obviously, but works in a bind. Could be scripted, if necessary.