特殊权限set_gid

set gid:
权限说明: set gid权限可以作用在文件上(二进制可执行文件),也可以作用在目录上。当作用在文件上时,其功能和set,uid一样,它会使文件在执行阶段具有文件所属组的权限。目录被设置这个权限后,任何用户在此目录下创建的文件都具有和该目录所属的组相同的组。
作用:
当作用在 文件 上的时候 ,其作用和set uid是类似的,作用在组的权限位,也是个小s,它可以让执行这个文件的普通用户临时拥有所属组的身份;
当作用在 目录 上的时候,创建子目录或子文件的所属组和该目录的所属组是保持一致的。
[root@master ~]# chmod g+s /usr/bin/ls
[root@master ~]# ls -l /usr/bin/ls  (我们发现所属组权限里面有s权限,其余的痛set-uid一样)
-rwxr-sr-x. 1 root root 117656 Nov  6  2016 /usr/bin/ls
 
对目录的更改,如果我们对目录的group权限增加s权限,再在其下面创建新的目录将会保持其目录所属组,不管在什么用户或者所属组下去更改
我们发现在更改aa所属组并且对group权限添加s后,后面所创建的子目录也变成了wsl的所属组
[root@mylinux ~]# mkdir aa/
[root@mylinux ~]# chown :xiaoliang aa/ (更改aa目录所属组)
[root@mylinux ~]# chmod g+s aa/ (对aa目录group组增加s权限)
[root@mylinux ~]# mkdir aa/bb
[root@mylinux ~]# ls -ld aa/ aa/bb
drwxr-sr-x. 3 root xiaoliang 15 12月 22 00:21 aa/
drwxr-sr-x. 2 root xiaoliang 6 12月 22 00:21 aa/bb/ (我们发现在更改aa所属组并且对group权限添加s后,后面所创建的子目录也变成了xiaoliang的所属组)
 
[root@mylinux ~]# mkdir cc
[root@mylinux ~]# chown :xiaoliang cc/
[root@mylinux ~]# mkdir cc/dd/
[root@mylinux ~]# ls -ld cc/ cc/dd/
drwxr-xr-x. 3 root xiaoliang15 12月 22 00:26 cc/
drwxr-xr-x. 2 root root 6 12月 22 00:26 cc/dd/ (同样的我们只更改目录cc的所属组,再在其下面创建子目录,却子目录却没有更改为xiaoliang所属组)
原文地址:https://www.cnblogs.com/xiaoliangxianshen/p/9152260.html