开发者社区 问答 正文

同一个目录。属组是l ,不同用户在该目录下创建文件,该文件属于不同属组,不同权限

创建了m目录,属组是l ,然后属组l 的用户在该目录下创建的文件,权限是775,属组是l ,属组a的用户,在该目录下创建文件,权限是755,属组是a

展开
收起
游客7ubicz45o6lyi 2020-07-10 16:19:49 502 分享 版权
阿里云 AI 助理回答

在Linux系统中,目录或文件的权限和属组设置是由umask值、用户身份以及目录的默认权限掩码共同决定的。根据您的描述,我们来分析一下这个场景:

  1. 创建m目录时

    • 假设使用的是属组l的用户(比如用户u)创建了目录m,且没有特别指定权限,默认情况下,目录的权限可能是775或755,具体取决于系统的umask值。但您没有提供创建目录时的具体权限,所以我们假设它对问题的影响不大,关键是后续在这个目录下创建文件的行为。
  2. 属组l的用户在m目录下创建文件

    • 属组l的用户(如用户u)在目录m下创建文件,得到的文件权限是775,属组仍然是l。这意味着该用户的umask值允许了所有权限(777)减去文件实际权限(775)的结果为002,即umask可能是002。这使得文件具有读、写、执行权限,并且同组用户也有这些权限,只是其他用户没有写权限。
  3. 属组a的用户在m目录下创建文件

    • 属组a的用户(比如用户v)在目录m下创建文件,得到的文件权限是755,属组是a。这里,文件权限变为只读、执行权限对所有人开放,但只有创建者有写权限。这种情况表明,该用户的umask值可能为022,因为从最大权限777中减去022后得到755,确保了文件对属主有完全权限,而组用户和其他用户只能读取和执行。

综上所述,不同用户在同一个目录下创建文件时,文件的权限会受到各自用户umask值的影响。umask是一个四位八进制数,用于确定新创建文件或目录的默认权限设置,通过从最大权限中减去umask值来决定最终权限。因此,在您的场景中,不同的umask值导致了不同属组用户创建文件时权限的不同。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答
问答地址: