linux特殊权限位suid
特殊权限位基本说明(了解):
linux系统基本权限位为9位权限,但还有额外3位权限位,共12位权限:
suid s(x) S 4 用户对应的权限位(用户对应的3位上)
sgid s(x) S 2 用户对应的权限位(用户组对应的3位上)
sticky t(x) T 1 其他用户对应的权限位
suid知识小结:是针对命令和二进制程序的
1)用户或属主对应的前三位权限的x位上如果有s就表示suid权限。
当x位上没有小写x执行权限的时候,suid的权限显示的就是大S。
2)suid作用是让普通用户可以以root(或其他)的用户角色运行只有root(或其他)账号才能运行的程序或命令,或程序命令对应本来没有权限操作的文件等。(注意和su及sudo的区别),suid为某一个命令设置特殊权限(使用者为所有人)
sgid知识总结:
1、与suid不同的是,sgid既可以针对文件也可以针对目录设置
2、sgid是针对用户组权限位的
对于文件来说,sgid的功能如下:
1)sgid仅对二进制命令程序有效
2)二进制命令或程序需要有可执行权限x
3)执行命令的任意用户可以获得该命令程序执行期间所属组的权限
对于目录:sgid的功能如下:
1)linux里默认情况用户创建文件,默认用户和组都是自身
2)sgid可以让用户在此目录下创建的文件和目录,具有和此目录相同的用户组设置
setgid位主要用在目录中,当为某个目录设置了setgid位以后,在该目录中新创建的文件具有该目录的所属组权限,而不是创建该文件的用户的默认所有者。这样,使得在多个用户之间共享一个目录中的文件变得简单。提示:用八进制数2000表示setgid权限位。