Linux 中的 Setuid、Setgid 和 Stickbit

Linux 中的 Setuid、Setgid 和 Stickbit

亲爱的,我正在学习 Linux 权限,对 setuid 、 setgid 和 stickybit 感到困惑。我的以下理解正确吗?

设置 ID:

文件:- 当在可执行文件上设置 setuid 时,它启动时不会以启动它的用户的权限运行,而是以文件所有者的权限运行。

目录:在 UNIX 和 Linux 系统上,目录上设置的 setuid 权限将被忽略

坚持位:-

文件:忽略文件的粘滞位权限

目录:如果目录设置了粘滞位,则只有文件所有者、目录所有者或特权用户才能删除文件。

设置guid:-

文件:Setgid 用于文件时,与 setuid 非常相似。进程在执行时将以拥有该文件的组的身份运行。

目录:setgid 是否适用于目录。我尝试设置它,但未成功设置。

-bash-4.4$ pwd
/cms/fmw/sticktest
-bash-4.4$ ls -rlt
total 3
drwxrwxr-x   2 cmsstg   cmsstg         3 Nov  8 16:23 guidtest
-bash-4.4$
-bash-4.4$ chmod 2775 guidtest/
-bash-4.4$ ls -rlt
total 3
drwxrwxr-x   2 cmsstg   cmsstg         3 Nov  8 16:23 guidtest
-bash-4.4$

答案1

适用。这意味着目录中的文件将以目录的组创建。

举个例子:

[/tmp]$ mkdir konijn
[/tmp]$ ls -ld konijn
drwxr-xr-x 2 ljm users 4096 Nov  8 14:15 konijn
[/tmp]$ touch konijn/wiep
[/tmp]$ ls -l konijn/wiep
-rw-r--r-- 1 ljm users 0 Nov  8 14:15 konijn/wiep
[/tmp]$ chgrp games konijn
[/tmp]$ chmod 2755 konijn
[/tmp]$ ls -ld konijn
drwxr-sr-x 2 ljm games 4096 Nov  8 14:19 konijn
[/tmp]$ touch konijn/wiep2
-rw-r--r-- 1 ljm games 0 Nov  8 14:21 konijn/wiep2

请注意,所有者(ljm)必须是组的成员(games

相关内容