原创 Linux学习(11)

2015-1-19 21:58 777 7 7 分类: 软件与OS 文集: Linux

set uid   :     只适用于文件

set gid  :      适用于目录和文件

set sticky  :  只适用于 目录

转自  http://www.linux521.com/2009/system/200909/8205.html

 

强制位与冒险位
除了读写执行权限以外,ext3文件系统还支持强制位(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.默认情况下,用户执行一个指令,会以该用户的身份来运行进程.指令文件上的强制位,可以让用户执行的指令,以指令文件的拥有者或所属组的身份运行进程.这里有一个很好的例子.你管理着几个大型的数据库系 统,而对它们进行备份需要有系统管理权限.你写了几个脚本,并设置了它们的suid,这样你指定的一些用户只要执行这些脚本就能够完成相应的工作,而无须 以数据库管理员的身份登录,以免不小心破坏了数据库服务器.通过执行这些脚本,他们可以完成数据库备份及其他管理任务,erqie.GIF在这些脚本运行结束之后,他们就又回复到他们作为普通用户的权限.另一个例子是/bin/passwd ,要读写/etc/passwd文件需要超级用户权限,但一般用户也需要随时可以改变自己的密码,suoyi.GIF/bin/passwd就设置了suid,当用户改自己密码的时侯就拥有了超级用户权限

 
强制位对目录的作用
默认情况下,用户建立的文件属于用户当前所在的组.目录上设置了setgid,表示在此目录中,任何人建立的文件,都会属于目录所属的组.

冒险位对目录的作用
默认情况下,如果一个目录上有w和x权限,则任何人可以在此目录中建立与删除文件.一旦目录上设置了冒险位,则表示在此目录中,只有文件的拥有者、目录的拥有者与系统管理员可以删除文件.
设置强制位与冒险位
用户可以用chmod指令来为文件设置强制位与冒险位.
set uid:chmod u+/-s 文件名
set gid:chmod g+/-s 文件名
sticky:chmod o+/-t 文件名
强制位与冒险位也可以通过一个数字加和,放在读写执行的三位数字前来指定.
4(set uid)
2(set gid)
1(sticky)

chmod 4777 文件名

chmod 2777 文件名

文章评论0条评论)

登录后参与讨论
我要评论
0
7
关闭 站长推荐上一条 /2 下一条