Linux特殊权限
Linux特殊权限详解
Linux的特殊权限分为三个:
1,SUID(位于属主权限中的执行权限位):SUID可以使得我们在运行某程序时,相应进程的属主是程序自身的属主,而不是启动者
添加SUID权限的格式:
->chmod u+s file(如果该文件的属主权限中原来就有执行权限,则SUID显示为小写s,否则显示为大写S)
取消SUID权限的格式:
->chmod u-s file
我们在某些特殊的情况下,需要某些用户以root或其他用户的身份去执行某些可执行文件,此时就需要SUID权限
2,SGID(位于属组权限中的执行权限位):SGID使得我们在运行某程序时,相应进程的属组是程序自身的属组,而不是启动者的基本组
添加SGID权限的格式:
->chmod g+s directory
如果该目录的基本组原来就有执行权限,则SGID显示为小写s,否则显示为大写S)
取消SGID权限的格式:
->chmod g-s directory
SGID的功能总结来其实就是使得用户在目录中创建的文件的属组自动归属为目录的属组,而不再是创建文件的用户的基本组
3,Sticky冒险位(位于其他用户权限中的执行权限位):冒险位表示在一个公共目录,每个人都可以创建文件并且删除自己创建的文件,但是不可以删除别人创建的文件
添加Sticky冒险位的格式:
->chmod o+t directory(如果该目录的基本组原来就有执行权限,则显示为小写t,否则显示为大写T)
取消Sticky冒险位
->chmod o-t directory
Sticky冒险位的功能总结起来就是,在同一个目录下的所有用户都不能删除除了自己之外的其他用户创建的文件,而只能删除自己创建的文件
特殊权限位sst,和普通权限位rwx一样,每一位所代表的数值,也是由三位二进制数组成的
000:0->表示没有特殊权限
001:1->表示有Sticky权限
010:2->表示有SGID权限
011:3->表示有SGID和Sticky权限
100:4->表示有SUID权限
101:5->表示有SUID和Sticky权限
110:6->表示有SUID和SGID权限
111:7->表示有SUID、SGID和Sticky权限
比如,如果一条命令如此显示
chmod 2755 directory
则表示,该目录有特殊权限,且权限为SGID
转载于:https://blog.51cto.com/zhubo/1830331