Linux 目录权限

Linux 目录权限

我有一个由 root 创建的文件夹,并且我希望能够向用户组添加权限,以便他们可以移动文件等等。

我做了以下事情:

chgrp -R developers testdir

该文件所有者现在是 root,组所有者是 developers。为什么 developers 中的用户还不能进行更改?

答案1

对于标准 unix 权限,您必须始终考虑所有者(用户/组/其他)、权限位和 umask。这些内容的组合描述了您的有效权限和新项目的权限。

  • chown/chgrp 设置所有权。
  • chmod 设置权限
  • umask 是每个用户环境的一部分,并且根据其设置方式,它将删除权限位。

因此,如果您想为一个组创建一个共享文件夹,您通常需要执行类似这样的操作。

  • 创建一个新组 (projectgrp) 并将用户添加到该组。
  • 将项目文件夹下的所有内容的组所有权更改为 projectgrp
  • 将所有文件夹的权限改为2775
  • 将所有文件改为0664。
  • 将所有用户的 umask 更改为 0002

当然,您还可以使用 ACL 做其他事情,这些事情对于系统管理员来说要复杂得多,但可以让最终用户更轻松。

答案2

因为该组对 testdir 上和其中的文件和目录没有适当的权限。

相关内容