ste*_*516 37 filesystem files file-type
我非常熟悉 linux 文件权限和特殊权限(sticky bit、suid、guid)
但是不知道是什么意思c?是许可,还是其他什么?我已经做了一些谷歌搜索,无法弄清楚。
这是包含它的设备文件。
steven@A215:~$ ls -l /dev/null
crw-rw-rw- 1 root root 1, 3 Dec 29 20:58 /dev/null
Run Code Online (Sandbox Code Playgroud)
图片参考:https : //detailed.wordpress.com/2017/10/28/understanding-ls-command-output/
ste*_*ver 42
这意味着该文件是一个字符特殊文件- 基本上是一个提供串行访问的设备文件(与块特殊设备如磁盘驱动器相反)。例如,终端和串行设备通过字符特殊文件(/dev/tty1,/dev/ttyS0等等)连接。
有关设备文件的简要介绍,请参阅Linux/UNIX:设备文件[cyberciti.biz]。有关更详细的讨论,请参阅此堆栈交换答案了解 /dev 及其子目录和文件。要了解底层数据结构,请参阅 The Linux Kernel Module Programming Guide: Character Device Files [tldp.org] 的第 4 章
sou*_* c. 24
第一个字符标识Unix 文件类型:字符设备被标记c为模式字符串的第一个字母。同样,块设备标有b,
$ ls -l /dev/null
crw-rw-rw- 1 root root 1, 3 Jan 21 21:50 /dev/null
$ ls -l /dev/sda
brw-rw---- 1 root disk 8, 0 Jan 21 21:50 /dev/sda
Run Code Online (Sandbox Code Playgroud)
还有更多这些特殊的设备(文件在某种意义上说在 Linux 中一切都是文件),
d : directory
s : socket
p : pipe
D : Door
l : symbolic link etc.
Run Code Online (Sandbox Code Playgroud)
有关更多详细信息,请参阅此维基百科页面。
ls -l输出一个 10 个符号的 UNIX 信息字符串,通常称为权限字符串。例如
-rw-rw-r-- 1 userName groupName 13200650 Dec 13 21:23 fileName
Run Code Online (Sandbox Code Playgroud)
权限字符串或模式字符串的第一个字符,称为文件描述符,表示文件类型,其余九个以三个为一组表示相关文件的权限,其中:
这里,在上面的例子中,第一个字符/符号“-”表示一个普通文件。
而在下面的例子中,
crw-rw-rw- 1 root root 1, 3 Dec 29 20:58 /dev/null
crw-rw-rw- 1 root root 1, 5 Jan 13 20:56 /dev/zero
Run Code Online (Sandbox Code Playgroud)
权限字符串的第一个字符是“c”,如上所述,它是一个文件类型指示器,表示字符设备。
除了-,c其他一些文件描述符是:
d -> 目录l -> 符号链接s -> Unix 套接字b -> 块设备p -> 管道D -> 门