lsof:括号中的数字在套接字中代表什么?

5
当我运行lsof命令时,在名称列中,对于套接字,一些数字将显示在括号中,如下所示。这是什么意思?
 command    pid        user      fd                 Name
 process    8197       root      29                 socket:[3050474]
1个回答

5

TL;DR: 与该套接字相关联的一个唯一数字。


Unix 的一个定义规则是“一切皆为文件”。因此,套接字也由非常特殊的文件系统表示,通常称为 sockfs

传统文件系统中的文件具有 inode-numbers -- 唯一的数字,可以用来标识它们:

$ ls -li /bin/bash 
7864369 -rwxr-xr-x 1 root root 656584 Oct 15  2014 /bin/bash
^^^^^^^
inode-number

同样适用于 sockfs,所有套接字也都有 inode-numbers
对于没有实际文件命名方案的特殊文件系统,所有文件都以通用名称形式为fsname:[inode-number](请参见:linux+v3.19.1/fs/dcache.c#L2945

1
如果你想知道这与端口号有什么关系,请参阅 https://dev59.com/KlsX5IYBdhLWcg3wRNrK#34032405 - Mark Stewart

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接