hadoop中使用ACL管理HDFS权限

hadoop中使用ACL管理HDFS权限,ACL的权限划分是在hadoop2.4中新加的权限控制,类似linux的ACL权限


1、修改hdfs的权限配置

<property>
	<name>dfs.permissions</name>
	<value>false</value>
</property>
<property>
	<name>dfs.namenode.acls.enabled</name>
	<value>true</value>
</property>


2、权限配置

赋所属主与组的权限

sudo -u hdfs hdfs dfs -chmod -R 771 /user/hive/warehouse
sudo -u hdfs hdfs dfs -chown -R hive:hive /user/hive/warehouse

赋ACL的权限

sudo -u hdfs hdfs dfs -setfacl -R -m group:bdc:rwx /hive/default
sudo -u hdfs hdfs dfs -setfacl -R -m group:bdc:rwx /hive/warehouse
sudo -u hdfs hdfs dfs -setfacl -R -m user:kwu:rwx /hive/warehouse

3、用户与组的设定

Important: Ensure that all users and groups resolve on the NameNode for ACLs to work as expected.

这是官网的说法,即在namenode的节点配置用户与组的关系

查看用户的所属组

groups kwu


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要给HDFS的递归目录设置文件权限,可以使用以下命令: ``` hdfs dfs -setfacl -R -m user:<username>:<permissions> <directory-path> ``` 其 `<username>` 是要授权的用户的用户名,`<permissions>` 是授予该用户的权限,`<directory-path>` 是要设置权限的目录路径。 例如,要将用户`user1`授权为目录`/test`及其所有子目录和文件的所有者,并授予读、写和执行权限,可以使用以下命令: ``` hdfs dfs -setfacl -R -m user:user1:rwx /test ``` 这将为`/test`目录及其所有子目录和文件授予`user1`读、写和执行权限。 ### 回答2: HDFSHadoop分布式文件系统)是一个分布式存储系统,可以存储大容量数据,并提供高可靠性和高性能读写访问。在HDFS,文件和目录都有对应的访问控制列表(ACL),用于维护用户的文件权限。 在HDFS,递归给用户文件赋予权限是指,在设置文件或目录的权限时,可以通过递归的方式将权限同时应用到该文件所在的目录以及该目录下的所有文件和子目录。这样做的好处是可以一次性完成对所选目录及其所有内容的权限设置,而不需要单独处理每个文件或目录。 递归赋予用户文件权限可以通过Hadoop命令行工具或Hadoop API来实现。通过命令行工具,用户可以使用"hdfs dfs -chmod -R"命令将权限递归地应用到指定目录和其所有子目录以及文件。使用该命令时需要注意,递归过程会修改整个目录树的权限,因此需要谨慎操作。 通过Hadoop API,开发人员可以编写自定义的Java程序来实现递归赋予用户文件权限的功能。在Java程序,可以使用FileStatus类来获取指定目录的文件信息,然后使用FileSystem类的setPermission方法递归地设置文件或目录的权限。 总之,在HDFS,递归给用户文件赋予权限是一种便捷的方式,可以方便地一次性设置目录及其所有内容的权限。这有助于提高系统管理的效率,并确保对文件访问的安全性。 ### 回答3: HDFSHadoop Distributed File System)是一个分布式文件系统,用于存储和处理大数据。在HDFS,递归是指对文件或目录的操作能够逐级地应用到其所有子目录和文件上。 对于HDFS的文件和目录,用户可以通过设置文件权限来控制对它们的访问。文件权限可以通过三个维度来定义,即所有者(Owner)、所属组(Group)和其他用户(Others)。每个维度都可以分别设置读(Read)、写(Write)和执行(Execute)权限,用符号表示为r、w和x。 当用户在HDFS创建一个目录时,默认情况下,该用户将成为该目录的所有者,并且具有所有权限。但是,该用户可以选择通过使用递归选项,将自己的文件权限递归应用到该目录的所有子目录和文件上。这意味着,该用户所设置的文件权限将在整个目录结构生效。 通过递归授予用户文件权限,可以简化文件权限管理的过程。例如,如果一个用户想要在某个目录创建大量子目录,并且希望这些子目录都具有相同的用户权限,那么该用户可以通过递归选项一次性为这些子目录设置相同的权限,而不需要逐个设置。 总而言之,HDFS赋予了用户递归地控制文件权限的能力。这使得用户可以将其文件权限应用到目录的整个子目录和文件上,从而简化了权限管理的过程。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值