如何读取 ls -l 权限

Max*_*lov 4 linux permissions chmod

我一直在尝试了解 Linux 权限。我知道我可以通过 Cyber​​Duck 从远程 Linux 机器下载一个文件,而另一个则无法下载。这是输出ls -l

-rw-r--r-- 1 root root 5360 Jul 26 17:31 coworking1.crt
-rw------- 1 root root 1704 Jul 26 17:31 coworking1.key
Run Code Online (Sandbox Code Playgroud)

(ls -l 的输出图像)

请告诉我:

  1. 我怎样才能读到这一行-rw-r--r-- 1 root root
  2. 除了通过 复制权限之外chmod --reference:file1 file2,我如何将 的权限设置coworking1.key为与coworking1.crt通过 bash 命令相同?

moo*_*int 11

在行中-rw-r--r-- 1 root root,第一个破折号字符表示没有任何特殊权限的文件。接下来的3个字符“rw-”表示文件的所有者可以读写文件,但文件不可执行。即,它不是您可以运行的程序。如果它也是可执行的,您将看到“rwx”而不是“rw-”。

接下来的 3 个字符,“r--”表示该文件组中的任何其他帐户,即“root”,只有读取权限;因为有可能出现“w”和“x”的破折号,这表明这些权限未授予组的文件。下面的“r--”表示“其他人”,即不是所有者且不在有权访问此文件的组中的帐户只有读取访问权限。当您看到“root root”时,第一个“root”是拥有该文件的帐户。第二个“根”显示适用于该文件的组。该组不一定必须与所有者相同;他们可以不同。例如,可能有一个名为“test”的组,其中包含 root 和帐户 jdoe。但在这种情况下,root 帐户可能是 root 组中的唯一帐户。您可以通过发出命令来查看系统上的组cat /etc/group您可以使用chmod 644 coworking1.key或将 coworking1.key 的权限设置为与 coworking1.crt 相同chmod g+r,o+r coworking1.key。在后一个示例中,您要为组添加读取访问权限,并为其他人添加读取访问权限。

有关参考资料,请参阅了解 Linux 文件权限Linux 教程 - 8. 权限,这将解释为什么chmod 644 coworking1.key也有效。但是,基本上您可以认为每个分组中的 3 个位置的第一个位置的数值为 4,第二个位置的数值为 2,第三个位置的数值为 1。因此,如果权限是“rw-”,则总共有 6 个。如果是“r--”,则值为 4。如果是“rwx”,则总共有 7 个。那些数字适用于每个分组。因此,使用 644 意味着所有者 (rw-) 有 6 个,组 (r--) 有 4 个,系统上的所有其他帐户 (r--) 有 4 个。但是你总是可以使用chmod g+r,o+r coworking1.key格式而不用担心如何以数字方式设置权限。对于该格式,使用加号添加权限,使用减号删除权限。