特殊权限.note

noteId: CD74B595C62C4E96986B4D2CE1ECBC4B · 原始路径:/ALL/Linux - A模块/服务配置/文件权限管理/管理文件权限 命令及具体参数/特殊权限.note · 图片:1 · 附件待处理:0

 
特殊权限:
1、suid ;2、sgid ;3、sbit
 
·SUID:
语法:
chmod u+s [目录]
使用数字为:4---
只对二进制文件和可执行文件有效,作用为:使普通用户运行该文件时,能够以管理员身份运行
针对命令和二进制程序的,当普通用户执行某个(passwd)命令的时候,可以拥有这个命令对应用户的权限,即让普通用户可以以root用户的角色执行程序或命令。
例如:如果给vim或者rm命令设置了setUID,那么任何文件都能编辑或者删除了,相当于有root权限了
 
 
·SGID:
chmod g+s [目录]
使用数字为:2---
使得新创建的文件或目录,属组都为主目录的属组
针对用户组权限位修改,用户创建的目录或文件所属组和该目录的所属组一致。(比如给一个文件路径设置了特殊权限为 ,假设这个路径属组为hr,那么user1在此目录下创建的文件属组将不是user1组,而是hr组)
 
 
·SBIT:
chmod o+t [目录]
使用数字为:1---
粘滞位,在目录创建了此权限,除了root用户和属主,其他用户只能对自己的文件进行删除、移动操作。仅有属主和 root 才有权力删除。
sticky的作用:
1.让多个用户都具有写权限的目录,并让每个用户只能删自己的文件。
2.特殊sticky目录表现在others的x位,用小t表示,如果没有执行权限是T
3.一个目录即使它的权限为"777"如果是设置了粘滞位,除了目录的属主和"root"用户有权限删除,除此之外其他用户都不允许删除该目录。
 
当用户没有执行权限时,特殊权限会显示为大写的‘S’和大写的‘T’
上面三个文件特殊权限的前提是条件普通用户拥有x(执行)权限,那么如果用户没有执行权限但文件或目录却被赋予了文件特殊权限呢。
这里拿粘着位说一下。如果我们把/tmp目录的普通用户的执行权限去掉后再查看权限会发生什么。
可以看到t变成了T,同样的s也是同样道理。此时文件特殊权限是不生效的。