文件的特殊权限

SUID

警告!!!
SUID不可以随便设置!!!我们可以使用命令find / -perm -4000来查找系统中有SUID权限的文件,当出现不是系统原本拥有SUID权限的文件如test1,就要多留意一下。
文件的特殊权限_第1张图片
作用
文件的特殊权限之一,只有可以执行的二进制程序才能设定SUID权限,且执行者对此文件要有执行(x)权限, 可以使执行者在执行此文件时成为该文件的属主,只能在程序执行的期间生效,程序结束后不再为此文件的属主。
设定
命令:chmod 4755 文件名 或者 chmod u+s 文件名
这里需要注意的是,我们在设定SUID的时候必须要有对此文件的执行权限,否则权限不生效,并且在ll查看的时候会显示S。
文件的特殊权限_第2张图片
正确添加应为:
文件的特殊权限_第3张图片
取消
直接修改权限取消即可,如 chmod 755文件名或者 chmod u-s 文件名

SGID

作用
只针对可执行的二进制程序,执行者必须拥有执行权限,执行过程中,组变为该程序的所属组。同样只是在程序执行过程中生效。
设定
命令:chmod 2755 文件名 或者chmod g+s 文件名,同理SUID,如果没有执行权限,则会显示S,不会生成SGID权限。
文件的特殊权限_第4张图片
取消
直接修改权限取消即可,如 chmod 755 文件名或者 chmod g-s 文件名

SBIT粘着位

作用
首先粘着位只能对目录生效,在设置了粘着位的目录中,普通用户只能对自己创建的文件进行写入和删除的操作,其他用户除root以外不能进行删除和写入操作。
设定
在设置粘着位时,我们要将让普通用户对此目录具有写和执行的权限,如果没有写权限的话,SBIT没有任何意义。
命令:chmod 1757 文件名,或者o+t 文件名
1.首先我们创建一个在/tmp创建mytest目录
文件的特殊权限_第5张图片
2.设置SBIT
文件的特殊权限_第6张图片
3.测试后发现user2无法删除user1创建的文件file1,SBIT生效
文件的特殊权限_第7张图片
取消
直接修改权限取消即可,如 chmod 755 文件名或者 chmod o-t 文件名

你可能感兴趣的:(Linux基本知识)