问题描述
我有一个如下的目录条目
srwxr-xr-x 1 ubuntu ubuntu 0 May 29 05:03 0.0.0.0=
我不知道 s
是什么意思,而且这是一个奇怪的文件名,我不知道它有什么用处。这可能是垃圾还是有意义的东西?
最佳办法
来自 ls
手册:
\\n
The file type is one of the following characters:
\\n
\\u2018-\\u2019 regular file
\\n \\u2018b\\u2019 block special file
\\n \\u2018c\\u2019 character special file
\\n \\u2018C\\u2019 high performance (\\u201ccontiguous data\\u201d) file
\\n \\u2018d\\u2019 directory
\\n \\u2018D\\u2019 door (Solaris 2.5 and up)
\\n \\u2018l\\u2019 symbolic link
\\n \\u2018M\\u2019 off-line (\\u201cmigrated\\u201d) file (Cray DMF)
\\n \\u2018n\\u2019 network special file (HP-UX)
\\n \\u2018p\\u2019 FIFO (named pipe)
\\n \\u2018P\\u2019 port (Solaris 10 and up)
\\n \\u2018s\\u2019 socket
\\n \\u2018?\\u2019 some other file type\\n
因此,这是一个 Unix socket 。它可能很有意义,因为套接字是由进程创建的,用于侦听请求。使用 lsof
来确定哪个进程正在使用该套接字。
如果套接字由以另一个用户身份运行的进程打开,则可能需要将 sudo
与 lsof
一起使用:
$ lsof /run/snapd.socket
$ sudo lsof /run/snapd.socket
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
Output information may be incomplete.
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd 1 root 197u unix 0xffff99dc9afa3000 0t0 191670 /run/snapd.socket type=STREAM
snapd 18626 root 8u unix 0xffff99dc9afa3000 0t0 191670 /run/snapd.socket type=STREAM
次佳办法
您也可以使用 file
命令来确定其类型:
$ file /tmp/ssh-k405k6mf0/agent.1221
/tmp/ssh-k405k6mf0/agent.1221: socket
甚至 mimetype
:
$ mimetype /tmp/ssh-k405k6mf0/agent.1221
/tmp/ssh-k405k6mf0/agent.1221: inode/socket