赞
踩
一、HDFS的权限设置之acl分配
官网参考地址:http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/HdfsPermissionsGuide.html#Configuration_Parameters
hortonworks版本
https://zh.hortonworks.com/blog/hdfs-acls-fine-grained-permissions-hdfs-files-hadoop/
1、ACL权限和linux的权限是对应的
hdfs dfs -getfacl -R /test1
"user" (or "u")表示这是一个用户的ACL条目。
"group" (or "g")表示这是一个用户组的ACL条目。
"other" (or "o")表示这是其它的ACL条目。即没有在ACL指定的用户和组的ACL条目。
"mask" (or "m")表示这是一个掩码的ACL条目。在指定其它非用户属主的ACL权限时,这个掩码条目必须被指定,否则执行chacl命令会出错。
xml的文件配置
hdfs-site.xml
<property>
<name>dfs.permissions.enabled</name>
<value>true</value> //默认值为true,即启用权限检查。如果为 false,则禁用
</property>
<property>
<name>dfs.namenode.acls.enabled</name>
<value>true</value> //默认值为false,禁用ACL,设置为true则启用ACL。当ACL被禁用时,NameNode拒绝设置或者获取ACL的请求
</property>
core-site.xml设置用户组默认权限
<property>
<name>fs.permissions.umask-mode</name>
<value>022</value>
</property>
2、core-site.xml中设置acl的默认的fs.permissions.umask-mode的值为022.{表示777-022=755,符号表示为rwxr-xr-x}
3、Default ACL
可以为某个目录设置一个默认的ACL权限,使得以后在该目录中新建文件或者子目录时,新建的文件/目录的ACL权限都是之前设置的default ACLs。
注意:复制发生在创建新文件或子目录时。父ACL的后续更改不会更改现有的子ACL。
hdfs dfs -setfacl -m user:data003:rwx,group:data03:rwx,default:user:data003:rwx,default:group:data003:rwx /ldata03
与只有权限位的文件相比,具有ACL的文件会在NameNode的内存中增加额外的开销。
二、linux-acl权限
与LINUX-ACL文件访问控制列表的对比
ACL管理命令: getfacl, setfacl, chacl
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。