Unix 用户、组和权限

Joh*_*man 6 security users permissions chmod

我不明白的UNIX用户,组,权限等。例如,通过事物的管理chmodchgrpusermodgroupadd,等命令。所有这些事情是如何运作的?

bah*_*mat 7

这都是一种授予对文件的各种访问权限的方法。

用户是个人用户。当您希望仅授予一人访问权限时使用此选项。组是多个用户。当您想授予多人访问权限时使用此选项。将它们全部放在一个唯一的组中并将其设置为组所有者。其他适用于不是用户或组所有者的任何人。

文件始终必须具有用户所有者和组所有者。通常每个用户都有一个以他们命名的组,只有他们作为成员。通过这种方式,您可以拥有一个真正由一个人所有的文件。

权限如下

  • R -- 允许用户读取文件内容
  • W -- 允许用户写入文件
  • X -- 允许用户将文件作为程序执行

R 和 W 可能是不言自明的。X 可能有点混乱。在某些情况下,您只希望某些用户执行某些程序。例如,也许您不希望普通用户执行fdiskformat. 删除 X 权限other将允许您像这样限制它。

列出的文件权限显示为类似rwxr-xr-x. 这实际上是三组权限。前三个用于用户所有者。后三个用于组所有者,后三个用于所有其他用户。字母表示被授予权限,而破折号表示权限被拒绝。在我使用的示例中,用户所有者可以读取文件、写入新内容并将文件作为程序执行。然而,组和其他只能读取和执行。

一些常见的“陷阱”

  • 使文件只写(-w-)可能不是你想要的
  • 为了执行,您还必须阅读。也就是说,--x 对文件没用,它必须是 rx。
  • 除了这些权限之外,还有其他权限可以存储在 ACL 中。如果您的操作系统和/或文件系统支持 POSIX、NFSv4 或扩展 ACL,您可能还需要检查那里的权限
  • 应用于目录的权限略有不同,但足够接近,您现在无需担心这一点,除非您应该始终在目录上同时启用 r 和 x。


小智 2

我从这里开始:文件系统权限