Linux中11位文件保护模式码

来源:互联网 发布:淘宝代销怎么样 编辑:程序博客网 时间:2024/06/07 05:41

1、其中9位描述文件的rwx(读取、写入和执行)权限;前3位为文件所有者的权限;中间3位为和文件所有者同组的用户的权限;最后3位是其他用户权限;


2、剩余的2位称为设置组标识位和设置用户标识位。如果某个用户执行了“设置用户标识位”的程序;那么这个进程的UID便会设置为此文件所有者的用户。设置组标识位作用类似。

这常常被用来使用户执行某些只有管理员才可以执行的操作。

例如fun只有root有权执行,现在想让荣胡user也能够执行这个操作。那么可以将fun这个程序文件所有者设置为root,同时将设置用户标识位设为1;之后user便可以执行这个程序。


3、与文件相关的还有一个内部掩码。用户设置的文件权限要和此掩码的反码向与,才能得到真正的文件权限。例如,设置a.out权限为0777,而掩码mask设置为0022,反码为0755;

那么真正的权限位是0777和0755与后的结果,也就是0755。


4、因为通过“设置用户标识位'的形式可以让一般用户执行的进程uid变为文件所有者,因此存在一定的风险。操作系统往往会提供相关的系统调用。

如access()可以以真是的uid来测试用户对文件的权限;

getuid()和getgid()返回真实的用户和组。而不是设置后的有效的用户和组。


0 0
原创粉丝点击