查了些资料最终也是了解了一些,在这里只讲问题,至于acl设置规则,选项等等,大家可以百度一下。
先看一下问题状况。
创建目录,查看权限
设置acl规则,查看权限:
我们可以看到,权限中的所属用户组权限多了可写,话说我们设置的是acl规则,为什么用户组权限那里却多出了可写权限。
其实,当你设置了acl的时候,在所属组的权限位置的意义,已经改变了。这里涉及到了ACL_mask权限问题(定义了ACL_USER, ACL_GROUP_OBJ和ACL_GROUP的最大权限),当你设置acl后,那个位置已经代表的是mask的权限。
我们通过getfacl查看一下:
可以看到,mask的值和用户组位置的一样。
所以说,当你添加acl的时候发现用户组位置的权限改变了,不要惊慌,那是因为,那个位置的权限已经变成了mask的权限值。
注意的是,当你发现权限改变,不要去将他改过了,那样你会改变mask的值,造成acl权限不全问题,而影响你的操作。例:
当权限完整,客户端具有可写权限:
当改回原先的权限:
还有就是我们去掉acl的时候,加号标志并没有取消
也是因为mask的值仍然存在。
如果想要去除加好,防止混乱,我们可以使用-b选项:
可以看到mask值没了,加号消失。
原文地址:http://blog.51cto.com/12332766/2116622