文件夹权限中的大写S


43

这封信S在下面是什么意思?有问题的文件是一个文件夹。

                                                                在此处输入图片说明

在这里阅读到一个大写字母S可以表示该setgid位对于二进制可执行文件是活动的。但这是一个文件夹。这是否仍然意味着该setgid位已激活?如果是这样,那意味着什么?

Answers:


36

这意味着放到该文件夹​​中的任何文件都将成为该文件夹的所属组。

例如:假设您有一个名为“ shared”的文件夹,该文件夹属于用户“ intrpc”和组“ users”,并且您(作为用户“ initrpc”)将文件拖放到该文件夹​​中。结果,该文件将属于用户“ intrpc”和组“ users”,而与“ initrpc”的主要组无关。

在大多数系统上,如果设置了目录的set-group-ID位,则新创建的子文件将继承与该目录相同的组,而新创建的子目录将继承父目录的set-group-ID位。

你可以在这里阅读。

为什么字母大写(从您提供的链接中)?

如果该组没有执行权限,则setgid无效。setgid在ls的输出中用小写的“ s”表示。如果无效,则用大写字母“ S”表示。


这是将setgid应用于目录的很好的解释。
马提亚斯·布劳恩

2
我想说setgid has no effect if the group does not have execute permissions一种误导,因为它确实有效果。只需将文件作为目录的所有者添加到目录中即可:该文件将具有目录的组,而不是所有者的主要组。
Matthias Braun

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.