linux强制位与冒险位(s位,t位)

来源:互联网 发布:mac系统基础教程视频 编辑:程序博客网 时间:2024/05/21 11:02

   linux 支持强制位(setuid 和setgid)与冒险位(sticky)的特别权限。针对u,g,o,分别有set uid,set gid,及sticky。

   强制位与冒险位添加在执行权限的位置上:如果该位置上原已有执行权限,则强制位与冒险位以小写字母的方式表示;否则,以大写字母表示set uid与set gid在u和g的x位置上各采用一个s,sticky使用一个t

   在可执行文件上,用户可以添加set uid和set gid。默认情况下,用户执行一个可执行文件,会以该用户的身份来运行进程。在可执行性文件上添加强制位后,可以让用户执行的指令,以指令文件的拥有者或所属组的身份运行进程

   默认情况下,用户建立的文件属于用户当前所在的组。目录上设置了setgid:任何人在此目录中建立的文件都会属于该目录所属的用户组

   默认情况下,如果一个目录上有w和x权限,则任何人可以在此目录中建立与删除文件。一旦目录上设置了冒险位,则表示在此目录中,只有文件的拥有者、及root才可以删除文件

   

用户可以用chmod指令来为文件设置强制位与冒险位。

set uid:chmod u+s 文件名

set gid:chmod g+s 文件名

sticky:chmod o+t 文件名

强制位与冒险位也可以通过一个数字加和,放在读写执行的三位数字前来指定。

4(set uid)

2(set gid)

1(sticky)

0 0