ACL权限设置命令setfacl和getfacl命令(8)

在单个文件的 ACL 条目的数量上,不同的文件系统有不同的限制。Ext2 和 Ext3 只能支持每个文件 25 个 ACL 条目。ReiserFS 和 JFS 可以支持超过 8,000 个条目。这个方面 Ext* 文件系统还需要加强。

无论多么复杂的系统中,文件系统的权限管理都是最基础的内容。而 Linux 对 ACL的支持,无疑是一把管理海量用户系统的利器,对 Linux 在大规模的企业级应用中更方便的发挥更大的作用添了一把火。

 mask

acl权限中有个"mask"的选项,它就是ACL权限的最大权限,现在是rwx,当你设置某个用户或组的ACL权限时,要跟mask的权限“相与”之后产生的权限才是该用户的最终权限,也就是加入mask的最大权限是rx,但是你给st用户设置的是rwx权限,此时st用户它的权限只有rx的权限,因为与最大权限“相与”得出的结果就是rx。
如果说ACL的优先级高于UGO,那么mask就是一个名副其实的最后一道防线。它决定了一个用户/组能够得到的最大的权限。这样我们在不改变已有ACL的定义的基础上,可以临时提高或是降低安全级别:

zhou@zhou-desktop:~/Temp$ setfacl -m mask::r aclTest/ zhou@zhou-desktop:~/Temp$ getfacl aclTest/ # file: aclTest # owner: zhou # group: zhou user::rwx user:guest:rwx                #effective:r-- group::r-x                      #effective:r-- group:guest:rwx              #effective:r-- mask::r-- other::r-x

可以看到,在我们将mask访问权限设置为只读时,mask行以上的ACL权限,除文件所有者外,都变成了只读,即#effective:r--所标识的实际权限。这就为临时改变整体权限和迅速恢复提供了便利。mask只对其他用户和组的权限有影响,对owner和other的权限是没有任何影响的。在使用了ACL的情况下,group的权限显示的就是当前的mask。通常我们把mask设置成rwx,以不阻止任何的单个ACL项到此为止。

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/11954.html