文件的特殊权限---SUID SGID SBIT
当 s 出现在拥有者的 x 权限位置时候,表示拥有者有SUID的权限(Set UID)
当 s 出现在所属组的 x 权限位置时候,表示所属组有SGID的权限(Set GID)
当 t 出现在其他人的 x 权限位置时候,表示其他人有SBIT的权限(Stick Bit)
SUID:临时获取文件拥有者的权限----只能针对文件
SGID:即使可以作用于目录,也可以作用于文件
作用于文件:SUID一样
作用于目录:继承父集目录---目录会不停的继承
SBIT:指的是,只有文件的拥有者,才能删除,修改该目录下的文件----只能针对目录
注意:
1、S和T都有大写和小写之分
2、大写说明:没有 x 权限
3、小写说明:有 x 权限
4、SUID=4 SGID=2 SBIT=1
对SGID举例 :
1、进入到tmp目录下,创建两个目录abc1.dir和abc2.dir:mkdir abc1.dir
mkdir abc2.dir
2、查看abc1.dir和abc2.dir的详细信息:ls -l
3、修改abc1.dir目录的所在组的权限:chmod g+s abc1.dir
4、并查看修改后的权限,可以看到abc1.dir的权限由:drwxr-xr-x 变成了:drwxr-sr-x
5、分别在目录abc1.dir和abc2.dir创建文件123和目录abc
6、查看目录abc1.dir和目录abc2.dir目录下文件的权限信息:ls -l abc1.dir/ ;ls -l abc2.dir/
7、可以看到abc1.dir目录下的abc的权限为:drwxr-sr-x,而目录abc2.dir下的abc的权限为:drwxr-xr-x,这说明了SGID作用于目录时,会继承父集目录(因为abc1.dir在上一步修改了权限g+s)。
8、在比如在abc1.dir目录下的abc目录下创建目录abcd,可以看到其权限里面也有s,对于上面所说的子目录会不停的继承。
对 S和 T 大写和小写之分举例:
1、查看tmp目录下文件的权限:ls -l
2、可以看到abc1.dir的权限为:drwxr-sr-x
3、把abc1.dir的所属组权限x拿掉: chmod g-x abc1.dir
4、查看可以看到abc1.dir的权限,可以看到权限由:drwxr-sr-x变成 drwxr-Sr-x,也即是 's' 变成了 'S'.
5、说明S和T都有大写和小写之分;大写说明:没有 x 权限;小写说明:有 x 权限
使用数字对权限进行修改 :SUID=4 SGID=2 SBIT=1
1、可以看到目录abc1.dir的权限为:drwxr-sr-x
2、修改abc1.dir拥有者的权限:chmod 4777 abc1.dir (其中,4代表SUID=4,修改SUID,SGID,SBIT的权限时,数字必须写在第一位。后面三个7代表r,w,x)
3、从下图可以看到权限被修改了。