目录上的 SUID 位

目录上的 SUID 位

在 Linux 中,目录权限有 SUID、SGID 和粘滞位。

我非常清楚文件或文件夹上的粘性和 SGID 位。

但是如果我在目录上应用 SUID 位会发生什么?

例如,如果我对某个文件应用 SGID 位,则启动此文件的进程将使用该文件组的有效组 ID,而不是调用该文件的用户的主组。如果对某个文件应用 SUID 位,情况也一样:它将以所有者作为有效用户运行。

例如,只要您在目录上应用 SGID 位,这种情况就会改变chmod -R 2770 /var/testdir/。现在,即使创建者的主要组不同,在其中创建的所有新文件和文件夹都/var/testdir/将继承相同的组/var/testdir/。此外,子目录也将继承 SGID 位。

但是如果你在目录上应用 SUID 位会发生什么?我没有找到有关这种情况的任何信息。

另外,如果在同一个文件夹上应用 SGID 和 SGID 位会发生什么情况?

答案1

GNU Coreutils:目录 Setuid 和 Setgid

27.5 目录和设置用户 ID 位以及设置组 ID 位

在大多数系统中,如果设置了目录的 set-group-ID 位,则新创建的子文件将继承与目录相同的组,而新创建的子目录将继承父目录的 set-group-ID 位。在少数系统中,目录的 set-user-ID 位对新子文件的所有权和新子目录的 set-user-ID 位具有类似的影响。这些机制让用户更轻松地共享文件,减少了使用 chmod 或 chown 共享新文件的需要。

相关内容