我在hdfs中有以下数据(2个文件):
/a
/b
/c
/f1.txt
/f2.txt
我想将f1.txt和f2.txt的权限更改为644:e.g。 hadoop fs -chmod 644 /a/b/c/*.txt
但是,为了真正授予访问这些文件的权限,我需要更改 /b
以及 /c
至 755
: +x
到包含文件的目录。注:我不拥有 /a
这已经是世界可读的了。
有什么问题吗 hadoop fs
命令我这么做?java/scala代码怎么样?
2条答案
按热度按时间mo49yndu1#
你可以用
acls
为此:给用户读写和执行权限
如果要查看文件的权限,请使用
getfacl
hdfs dfs -getfacl -R hdfs://somehost:8020/a/b/c/f1.txt
hadoop指南中的setfacl:塞特法
用法:
hdfs dfs -setfacl [-R] [-b|-k -m|-x <acl_spec> <path>]|[--set <acl_spec> <path>]
设置文件和目录的访问控制列表(ACL)。选项:
示例:
huus2vyu2#
使用
-R
(递归)选项。它允许存在于目录中的所有文件。