unix 域套接字的“netstat -ap”指的是谁的“I-Node”?

unix 域套接字的“netstat -ap”指的是谁的“I-Node”?

for unix 域套接字I-Node的输出意味着什么?netstat -ap

看起来和socket文件的inode不太一样:

$ netstat -ap
...
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags  Type   State     I-Node  PID/Program name     Path
unix  2    [ ACC ]  STREAM LISTENING 2794745 -              /tmp/emacs1001/server
...

$ sudo ls -i -l /tmp/emacs1001/server 
11796488 srwx------ 1 testme testme 0 Nov 30 19:22 /tmp/emacs1001/server

谢谢。

答案1

netstat 显示的 inode 是您的套接字的 inode sockfs(一个虚拟文件系统,保存系统中套接字的 inode)。

也可以sockfs在条目中看到- 套接字 fd 将被标记为与inode 的/proc/<pid>/fd/链接(这样您就可以将套接字 inode与拥有这些套接字的 fd 的进程相匹配)。socket:[XXXX]XXXXnetstat

而socket文件的inode就是属于含有文件系统;例如,/tmp/emacs1001/server是根文件系统上的套接字文件系统节点ext4(或者在您的/tmp文件系统中,如果它是独立安装的话)

相关内容