我的网站在第三方服务器上运行,并且遇到具有以下权限的目录:
folder1 drwsr-s---
folder2 drwxr-s---
folder3 drwxr-x---
我熟悉d
,r
,w
,x
(对于文件夹)和-
。在Filezilla中进行编辑时,似乎所有这些都等于chmod 750
。
man chmod
告诉我s
代表“在执行时设置用户或组ID” 。这意味着什么?以及它如何映射到相同的chmod
代码上?我应该为此担心吗?
答案 0 :(得分:1)
“ s”位称为“ setuid”和“ setgid”位。它的作用取决于文件类型。
在目录中(例如您的示例),这些位为目录中创建的所有文件设置默认用户或组。
例如,如果您的目录由foo:foo拥有,并且设置了setuid和setgid位,则该目录中创建的所有文件都将由foo:foo拥有,而不管是谁创建的。
在您的示例中,为每个目录设置了“ setgid”位。这意味着对于在这些目录中创建的每个文件,所有者将是创建文件的用户,但是将组设置为与目录的组匹配,而不是与用户的主组匹配。