您的位置:首页 > 运维架构 > Linux

Linux中的特殊权限

2015-06-25 14:26 633 查看
Linux中除了普通权限之外,还有三个特殊权限。
       SUID::以文件的所属用户执行,而非执行文件的用户,多用于可执行文件,设置suid后,在权限位中,所属用户的 最后一个权限为变为s,添加SUID权限可用“+s”表示。
    例如:passwd
$ which passwd
/usr/bin/passwd
[adam@ultraera ~]$ ls -l /usr/bin/passwd 
-rwsr-xr-x. 1 root root 25980 Feb 22  2012 /usr/bin/passwd
[adam@ultraera ~]$
        SGID:主要针对文件夹,在设置了SGID的文件夹中创建任何新文件都继承该文件的所属组,设置sgid后,在权限位中,所属组的最后一个权限位变为s,添加SGID权限可用“+s”表示。
例如:[adam@ultraera ~]$ mkdir ultraera
[adam@ultraera ~]$ ls -l
total 4
drwxrwxr-x 2 adam adam 4096 Nov 27 21:09 ultraera
[adam@ultraera ~]$ chmod g+s ultraera/
[adam@ultraera ~]$ ls -l
total 4
drwxrwsr-x 2 adam adam 4096 Nov 27 21:09 ultraera
[adam@ultraera ~]$ su 
Password: 
[root@ultraera adam]# mkdir -p ultraera/test
[root@ultraera adam]# ls -l ultraera/
total 4
drwxr-sr-x 2 root adam 4096 Nov 27 21:09 test
[root@ultraera adam]#        sticky:针对文件夹,对目录拥有写权限的用户,仅可以删除其所拥有的文件,无法删除其他用户所拥有的文件,设置了sticky之后,在权限位,other的最后一个权限位变为t,添加SGID权限可用“+t”表示。
例如:[root@ultraera tmp]# mkdir ultraera
[root@ultraera tmp]# chmod a=rwx,o+t ultraera/
[root@ultraera tmp]# ls -ld ultraera/
drwxrwxrwt 2 root root 4096 Nov 27 21:29 ultraera/
[root@ultraera tmp]# useradd user1
[root@ultraera tmp]# useradd user2
[root@ultraera tmp]# su user1
[user1@ultraera tmp]$ touch ./ultraera/test
[user1@ultraera tmp]$ ls -l ultraera/
total 0
-rw-rw-r-- 1 user1 user1 0 Nov 27 21:31 test
[user1@ultraera tmp]$ exit
exit
[root@ultraera tmp]# su user2
[user2@ultraera tmp]$ rm -f ./ultraera/test 
rm: cannot remove `./ultraera/test': Operation not permitted
[user2@ultraera tmp]$        suid : 4
sgid : 2
sticky : 1chmod  4644 filename                  #设置文件suid权限
chmod  2755 flodername             #设置文件夹sgid权限
chmod  1755 flodername             #设置文件夹sticky权限

本文出自 “一杯白开水” 博客,请务必保留此出处http://ultraera.blog.51cto.com/6640392/1583493
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: