acl设置问题解析

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了acl设置问题解析相关的知识,希望对你有一定的参考价值。

在学习nfs服务配置的时候用到了acl规则(服务配置文件权限设置可写,但是由于客户端映射,不能写入,所以要设置系统权限),但是遇到了一个小小的问题:一、当使用-x选项取消规则的时候,再次查看权限后面仍然跟着+号。二、再添加acl规则的时候,在用户组权限多了别的权限。

  查了些资料最终也是了解了一些,在这里只讲问题,至于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值没了,加号消失。

以上是关于acl设置问题解析的主要内容,如果未能解决你的问题,请参考以下文章

解析服务器云代码设置ACL

解析:ACL 无法将数据发送到服务器

用于删除的解析服务器“找不到对象”

Kafka安全机制解析及重构(四) ACL权限控制

NAT与ACL执行顺序解析

解析 CloudCode 的执行顺序