web-dev-qa-db-ja.com

「ls」出力のsrwxr-xr-xの「s」はどういう意味ですか?

次のようなディレクトリエントリがあります。

srwxr-xr-x  1 ubuntu ubuntu    0 May 29 05:03 0.0.0.0=

sが何を意味するのかわかりません。また、それは奇妙なファイル名であり、それが何のために役立つのでしょうか。これはゴミですか、それとも意味のあるものですか?

18
hol

lsマニュアル から:

ファイルタイプは、次の文字のいずれかです。

「-」通常ファイル
「b」ブロック特殊ファイル
「c」文字特殊ファイル
「C」高性能(「連続データ」)ファイル
「d」ディレクトリ
「D」ドア(Solaris 2.5以降)
「l」シンボリックリンク
「M」オフライン(「移行済み」)ファイル(Cray DMF)
「n」ネットワーク特殊ファイル(HP-UX)
‘p’ FIFO(名前付きパイプ)
「P」ポート(Solaris 10以降)
’sソケット
‘?’他のファイルタイプ

つまり、これは nixソケット です。ソケットは要求をリッスンするプロセスによって作成されるため、意味があります。 lsofを使用して、そのソケットを使用しているプロセスを判別します。

別のユーザーとして実行されているプロセスによってソケットが開かれた場合、Sudolsofとともに使用する必要がある場合があります。

$ 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
27
muru

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
8
Ravexina

合計すると、このファイルタイプはspecial fileと呼ばれます。UNIXには複数の特殊ファイルが存在します(それらはすべてlsマニュアルの一部としてリストされており、便利なスニペットはmuruによって提供されています)。

さらに読む- https://www.linux.com/blog/file-types-linuxunix-explained-detail

1
Venny