HDFS涉及ACLs的命令
What is ACL
Hadoop中的ACL与Linux中的ACL机制基本相同,都是用于为文件系统提供更精细化的权限控制。
参考 HDFS ACLs: Fine-Grained Permission for HDFS Files in Hadoop
开启ACLs
<property> <name>dfs.namenode.acls.enabled</name> <value>true</value> </property>
getfacl
getfacl
用于查看一个文件/目录的ACL状态,例如:
1 [root@ecs1 tao]# hadoop dfs -getfacl /user/tao 2 DEPRECATED: Use of this script to execute hdfs command is deprecated. 3 Instead use the hdfs command for it. 4 5 # file: /user/tao 6 # owner: tao 7 # group: supergroup 8 user::rwx 9 group::rwx 10 other::rwx
setfacl
基本用法
假设,我们有一个HDFS目录/user/tao/xt-data
,它目前的权限为drwxrwxr-x tao supergroup
。我希望让另一个用户Hbase
(不属于任何group)对该目录有rwx
的权限,那么可以如下操作:
hdfs dfs -setfacl [-R] [-b|-k -m|-x <acl_spec> <path>]|[--set <acl_spec> <path>]
<!-- COMMAND OPTIONS
<path>: 路径
-R: 遍历路径里的所有文件。
-b: 撤销除了基本用户和组权限以外的所有权限。
-k: 撤销默认的ACL设置。
-m: 添加新的权限来使用此ACL。不影响现有权限。
-x: 只撤销指定的ACL。
<acl_spec>: 逗号分隔的ACL权限列表。
--set: 使用该选项指定的路径完全取代现有的ACL。之前的ACL将不再适用。
-->
[tao@ecs3 ~]$ hadoop dfs -setfacl -m user:hbase:rwx /user/tao/xt-data[tao@ecs3 ~]$ hadoop dfs -getfacl /user/tao/xt-data DEPRECATED: Use of this script to execute hdfs command is deprecated. Instead use the hdfs command for it.# file: /user/tao/xt-data # owner: tao # group: supergroup user::rwx user:hbase:rwx group::r-x mask::rwx other::r-x[tao@ecs3 ~]$ su[root@ecs3 tao]# sudo -u hbase hadoop dfs -mkdir /user/tao/xt-data/testDir [root@ecs3 tao]# sudo -u hbase hadoop dfs -ls /user/tao/xt-data DEPRECATED: Use of this script to execute hdfs command is deprecated. Instead use the hdfs command for it.Found 1 items drwxr-xr-x - hbase supergroup 0 2015-05-22 16:33 /user/tao/xt-data/testDir [root@ecs3 tao]#
可以看到,现在用户hbase
可以在/user/tao/xt-data
中新建一个目录testDir
了。那么,这个新建的目录的权限是什么呢?
1 [root@ecs3 tao]# hadoop dfs -getfacl /user/tao/xt-data/testDir 2 DEPRECATED: Use of this script to execute hdfs command is deprecated. 3 Instead use the hdfs command for it. 4 5 # file: /user/tao/xt-data/testDir 6 # owner: hbase 7 # group: supergroup 8 user::rwx 9 group::r-x 10 other::r-x
可以看到,这个新建的目录与其他普通的目录在权限是一样的。如果想使得新建的目录/文件的ACL也满足我们的要求,可以使用default acl来实现。
关于权限标志位的顺序: 在命令
hadoop dfs -setfacl -m user:hbase:rwx /user/tao/xt-data
中,权限标志位rwx
的顺序不能改变,否则会报错:-setfacl: Invalid permission in
正确的写法有:rwx
,r-x
,-r-
,-rx
等;
错误的写法有:wrx
,w-x
等。
Default ACL
可以为某个目录设置一个默认的ACL权限,使得以后在该目录中新建文件或者子目录时,新建的文件/目录的ACL权限都是之前设置的default ACLs。
例如,现在已经有了一个HDFS目录/user/tao,其当前的ACL状态为:
[root@ecs1 tao]# hadoop dfs -getfacl /user/tao # file: /user/tao # owner: tao # group: supergroup user::rwx group::rwx other::rwx
我们想将其default acl权限设置为user:hbase:rwx
,用命令:
[root@ecs1 tao]# sudo -u tao hadoop dfs -setfacl -m default:user:hbase:rwx /user/tao [root@ecs1 tao]# hadoop dfs -getfacl /user/tao # file: /user/tao # owner: tao # group: supergroup user::rwx group::rwx other::rwx default:user::rwx default:user:hbase:rwx default:group::rwx default:mask::rwx default:other::rwx
检查是否生效:
1 [root@ecs1 tao]# sudo -u tao hadoop dfs -mkdir /user/tao/testDir 2 3 [root@ecs1 tao]# hadoop dfs -getfacl /user/tao/testDir 4 # file: /user/tao/testDir 5 # owner: tao 6 # group: supergroup 7 user::rwx 8 user:hbase:rwx #effective:r-x 9 group::rwx #effective:r-x 10 mask::r-x 11 other::r-x 12 default:user::rwx 13 default:user:hbase:rwx 14 default:group::rwx 15 default:mask::rwx 16 default:other::rwx
转载于:https://www.cnblogs.com/royfans/p/7326859.html
HDFS涉及ACLs的命令相关推荐
- HDFS权限设置 \ HDFS涉及ACLs的命令
本文主要参考:https://www.cnblogs.com/royfans/p/7326859.html https://www.cppentry.com/bencandy.php?fid=115& ...
- HDFS的访问方式之HDFS shell的常用命令
场景 CentOS7上搭建Hadoop集群(入门级): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/119335883 在上面搭 ...
- 2021年大数据Hadoop(九):HDFS的高级使用命令
2021大数据领域优质创作博客,带你从入门到精通,该博客每天更新,逐渐完善大数据各个知识体系的文章,帮助大家更高效学习. 有对大数据感兴趣的可以关注微信公众号:三帮大数据 目录 HDFS的高级使用命令 ...
- Hadoop HDFS概念学习系列之shell命令使用HDFS的一些其他命令(十九)
其他相关命令还包括以下这些: NameNode -format : 格式化DFS文件系统 secondaryNameNode : 运行DFS的SecndaryNameNode进程 NameNo ...
- shell 进入hadoop_Hadoop关于HDFS的基本操作(Shell命令)
在这里我给大家继续分享一些关于hdfs分布式文件的经验哈,其中包括一些hdfs的基本的shell命令的操作,再加上hdfs java程序设计.在前面我已经写了关于如何去搭建hadoop这样一个大数据平 ...
- hdfs上文件常用命令
hdfs上文件常用命令 为了每次执行Hadoop的时候,不必须要前者加上hadoop的安装的绝对路径,要做的事情就是将其安装路径加入到PATH中,这样就可以直接执行hadoop命令. 如下: vim ...
- hadoop fs –ls /hbase 无内容_Hadoop学习---HDFS的常用shell命令详解
注意:访问hdfs系统的指令 hadoop dfs --- 已过时 hadoop fs -- 使用范围更大 hdfs dfs --范围相对较小hadoop fs 和 hdfs dfs之间没有太大的区别 ...
- HDFS系列(3) | HDFS的Shell常用命令大全
此次更新的的博文是关于HDFS的shell的常用命令,希望大家能够喜欢 目录 一. 基本语法 二. 命令大全 三. 常用命令实操 1. 常用命令及其作用对比表 2. 常用命令的实际操作 一. 基本语法 ...
- HDFS文件系统基本文件命令、编程读写HDFS
HDFS是一种文件系统,存储着Hadoop应用将要处理的数据,类似于普通的Unix和linux文件系统,不同的是他是实现了google的GFS文件系统的思想,是适用于大规模分布式数据处理相关应用的.可 ...
最新文章
- 从源码分析DEARGUI之add_slider_float-4和add_slider_int-4
- mybatis$和#的区别
- 2017.9.14 仪仗队 思考记录
- 190816每日一句
- Android 汽车电子功能安全模块化设计思路
- 联想电脑进入BIOS曾经走过的“坑”
- 各种路由器接口与连接方法
- 最佳实践:MySQL CDC 同步数据到 ES
- luogu P5320 [BJOI2019]勘破神机
- 【算法】独立任务最优调度问题
- 幼儿体能五项技能测试软件,卓艺湖畔幼儿园教师五项体能培训--器械游戏分享...
- 【转】专家推荐 13个优秀的UML建模工具软件
- 【随机过程】13 - 过滤泊松的应用
- 全球与中国云监控软件市场深度研究分析报告(2021)
- SATA协议OOB随笔
- The 2021 ICPC Asia Taipei Regional Programming Contest
- mqtt haproxy 代理及负载搭建
- 西安国微EDA研发中心正式启动运营;2020上半年10大典型工业网络安全事件 | 美通企业日报...
- c:set -----------JSTL
- 【考研政治】史纲第一章思维导图(完全按照肖书结构+个人精简记忆)
热门文章
- 极光服务器维护,极光世界服务器维护更新公告 V10.650内容一览
- PHP中SQL注入与跨站攻击的防范
- text-shadow 详解及示例
- 文献解读:中国黑龙江省蜱虫传播病毒的病毒学分析
- OpenCV在笔记本上打不开摄像头的问题
- 数字革命将重构证券商业生态,券商大咖齐聚一堂探讨应变之道!
- SwiftUI 入门之clipped是什么如何用
- 计算机的硬盘 内存在哪查到,dos下通过wmic命令查看硬盘和内存/CPU信息(windows自带命令查看硬件信息)...
- UE4和VR的项目流程(新手经验)
- 三角函数与反三角函数的关系及图像