linux中文件与目录的特殊权限

time:18.03.26ui

以如下2个典型的文件及目录来分析:code

ll /usr/bin/passwd 
-rwsr-xr-x. 1 root root 27832 Jan 29  2014 /usr/bin/passwd
ll -d /tmp
drwxrwxrwt. 23 root root 4096 Mar 25 23:53 /tmp

SUID

s出如今文件拥有者的x权限上时,如咱们上面看到的/usr/bin/passwd这个文件的权限时-rwsr-xr-x,此时就被称为SET UID简称SUID.
SUID权限仅对二进制可执行文件有效it

执行者对于该文件具备x的权限
本权限仅在执行该文件的过程当中有效
执行者将具备该文件拥有者的权限权限

举例:
普通用户使用passwd命令修改本身的密码, 实际上最终更改的是/etc/passwd文件.该文件权限以下:二进制

ll /etc/passwd
-rw-r--r--. 1 root root 2394 Mar 25 23:17 /etc/passwd

能够看到只有root用户才有写权限, 由于/usr/bin/passwd设置了suid权限位,普通用户执行此命令时临时拥有root权限以间接地修改/etc/passwd从而修改本身的密码.
设置方法
chmod u+s <文件或目录>密码

SGID

s出如今目录或文件的全部组的x权限上时称为SET GID简称SGID
设置方法
chmod g+s <文件或目录>方法

SBIT

t出如今目录的其余用户的x权限上时, 称为Sticky Bit简称SBIT[仅对目录有效, 对文件无效]im

做用:

当用户在该目录下创建文件或目录时,仅有本身与 root才有权力删除.
最具备表明的就是/tmp目录,任何人均可以在/tmp内增长、修改文件(由于权限全是rwx),但仅有该文件/目录创建者与 root可以删除本身的目录或文件文件

设置方法
chmod o+t <目录>co

若特殊权限未设置成功则显示为大写字母 {S, S, T}

相关文章
相关标签/搜索