在一些描述的材料中SGID
,当任何用户执行设置了 SGID 位的文件时,它将始终以该文件的组所有权执行,无论是谁在运行它。
sudo groups arch1
arch1 : arch
用户ach1
属于该组arch
。
arch@MiWiFi-R3-srv:~$ cat /tmp/myarch.sh
whoami
arch@MiWiFi-R3-srv:~$ chmod 750 /tmp/myarch.sh
arch@MiWiFi-R3-srv:~$ ls -al /tmp/myarch.sh
-rwxr-x--- 1 arch arch 8 Aug 23 17:22 /tmp/myarch.sh
在账户中执行arch
,输出为arch
.在账户
中执行arch1
,输出为arch1
.
arch@MiWiFi-R3-srv:~$ chmod 2750 /tmp/myarch.sh
arch@MiWiFi-R3-srv:~$ ls -al /tmp/myarch.sh
-rwxr-s--- 1 arch arch 8 Aug 23 17:22 /tmp/myarch.sh
在账户中执行arch
,输出为arch
.在账户
中执行arch1
,输出是arch1
,输出不是arch
。
如何理解“它将始终以该文件的组所有权执行,无论谁运行它”,设置 mode 没有任何意义2750
,模式状态0750
具有相同的效果!