日期:2014-05-16  浏览次数:20686 次

Linux文件特殊权限

Linux中文件除了r、w、x这三个读、写、执行的权限还有特殊权限(s、t)

SUID权限:

当s这个标志出现在文件所有者的x权限上时(如:"-rwsr-xr-x"),则被称为Set UID,简称SUID权限。

SUID限制:

1、SUID权限仅对二进制程序(可执行程序)有效

2、执行者对于该程序需要具有x的可执行权限。

3、本权限仅在执行该程序的过程中有效。

SUID作用:

执行者满足上述限制后将具有该程序所有者的权限。

举例说明:

用户的密码都存于/etc/shadow文件中,而如图显示只有root能对其修改,那为什么普通用户也能进行修改。


如图所示,因为passwd有SUID权限,所以passwd执行时执行者获得了程序所有者的root权限,从而解释了上述问题。


SGID权限:

当s这个标志出现在用户组的x权限上时(如:"-rwxr-sr-x"),则被称为Set GID,简称SGID权限。

SGID与SUID不同,它既针对文件有效也针对目录有效。

对文件的作用:

SGID限制:

1、SGID权限对二进制程序(可执行程序)有用。

2、执行者对于该程序需要具有x的可执行权限。

3、本权限仅在执行该程序的过程中有效。

SGID作用:

执行者满足上述限制后将具有该程序用户组的支持。

举例:


对于/var/lib/mlocate/mlocate.db文件etherlai用户是无法访问,但当运行locate的时候就能够读取。

对目录的作用:

用户在某个目录下新建的文件对应的用户组都会与该目录的用户组名相同。


SBIT权限:

当t这个标志出现在文件其他人的x权限上时(如:"-rwxr-