Unix/Linux 文件权限后面的数字如“-rw-rw-r--. 1 ”在“ls -l”输出中是什么意思

Unix/Linux 文件权限后面的数字如“-rw-rw-r--. 1 ”在“ls -l”输出中是什么意思

谁能解释一下-rw-rw-r--. 1并提供有关 ls -lart 命令的一些“详细”信息。

具体来说,1文件权限后面的是什么意思?为什么会改变或者为什么不同的文件不同?

答案1

一些例子:

-rwxrw-r-- 1是所有者具有读取、写入和执行权限的文件。组具有读取和写入权限,其他人只有读取权限。没有指向此数据的链接。

drwxr-xr-x 10是一个包含 8 个文件的目录。额外的 2 个是...。只有所有者可以在此目录中创建文件,其他人可以访问目录中的文件,并在权限允许的情况下读取这些文件的内容。

-r-------- 2是只有所有者可以读取但不能执行或修改的文件。它有一个链接,这意味着磁盘上某处有另一个文件引用访问相同的数据。因此磁盘上的实际“文件内容”有 2 个“文件”引用它。这些链接通常是使用 创建的,而ln无需提供-s

所以:

  • 字符1是节点类型:通常-d指示文件或目录。
  • 字符 2、3、4 代表主人的read、write 和 e ecute。x
  • 角色 5、6、7 为该组做同样的事情。
  • 字符 8、9、10 对其他人也做同样的事情。
  • 如果节点是文件,则权限字符后面的数字表示链接的数量;如果节点是目录,则权限字符后面的数字表示“子节点”的数量。

参见章节长格式man ls

答案2

对于文件这是硬链接文件内容。1 表示没有硬链接(典型情况),数字以上 1 表示这个和另一个N-1文件名共享相同的内容。

对于目录 大多数但不是全部文件系统报告链接数为 2+在哪里是子目录的数量。

答案3

[max@localhost ~]$ ll

共 4

德鲁伊2max max 4096 9月 25 17:11 zzz

这里 2 表示链接数

现在我将在 zzz 内创建 3 个目录

现在值变为 5

[max@localhost ~]$ cd zzz
[max@localhost zzz]$ mkdir abc
drwxrwxr-x 5 max max 4096 9 月 25 日 17:16。
drwx------ 5 max max 4096 9月 25 17:12 ..
drwxrwxr-x 2 max max 4096 9月 25 17:16 上午
drwxrwxr-x 2 max max 4096 9月 25 17:16 b
drwxrwxr-x 2 max max 4096 9月 25 17:16 c

[max@localhost zzz]$ cd

[max@localhost ~]$ ll

共 4

德鲁伊5max max 4096 9月 25 17:16 zzz

这是因为现在 zzz 里面有 5 个目录,其中 3 个是a b c隐藏目录,2 个是隐藏目录. ..

如果我创建文件,那么链接计数不会发生任何变化

[max@localhost zzz]$ touch 1 2 3
[max@localhost zzz]$ ls -al
共 20
drwxrwxr-x 5 max max 4096 9月25日 17:26 . ------> 当前目录链接数
drwx------ 5 max max 4096 9月25日 17:12 .. ------> 父目录链接数
-rw-rw-r-- 1 max max 0 9月 25 17:26 1
-rw-rw-r-- 1 max max 0 9月 25 17:26 2
-rw-rw-r-- 1 最大 最大 0 9月 25 17:26 3
drwxrwxr-x 2 max max 4096 9月 25 17:16 上午
drwxrwxr-x 2 max max 4096 9月 25 17:16 b
drwxrwxr-x 2 max max 4096 9月 25 17:16 c
[max@localhost zzz]$ cd
[max@localhost ~]$ ll
共 4
drwxrwxr-x 5 max max 4096 9月25日 17:26 zzz

但如果我删除任何目录,那么链接数就会改变

[max@localhost zzz]$ rmdir bc
[max@localhost zzz]$ cd
[max@localhost ~]$ ll
共 4
drwxrwxr-x 3 max max 4096 9月 25 17:28 zzz

相关内容