在我们开发的过程中有这么一种场景,/projectA目录是hadoopdeploy用户创建的,他对这个目录有wrx权限,同时这个目录属于supergroup,在这个组中的用户也具有这个目录的wrx权限,对于其他人,不可访问这个目录。现在有这么一个特殊的用户root,我想root用户可以访问这个目录,在不修改root用户组和其他人的权限的情况下,还有什么方式可以实现这个功能呢?
背景
由上图可以,root用户想访问/projectA目录,在hdfs中可以通过acl来实现。
(资料图片仅供参考)
# 创建目录[hadoopdeploy@hadoop01 ~]$ hdfs dfs -mkdir /projectA# 列出根目录下的文件夹[hadoopdeploy@hadoop01 ~]$ hdfs dfs -ls /Found 1 itemsdrwxr-xr-x - hadoopdeploy supergroup 0 2023-05-24 20:35 /projectA# 将 /projectA 目录的权限修改成 770, 即其他人没有这个目录的访问权限[hadoopdeploy@hadoop01 ~]$ hdfs dfs -chmod 770 /projectA# 再次查看发现修改成功[hadoopdeploy@hadoop01 ~]$ hdfs dfs -ls /Found 1 itemsdrwxrwx--- - hadoopdeploy supergroup 0 2023-05-24 20:35 /projectA[hadoopdeploy@hadoop01 ~]$
环境准备
从上述代码中可知,我们创建了一个/projecetA的目录,且给这个目录的权限为770,那么其他人对这个目录应该是没有访问权限的。 通过上述图片可知,我们用root用户上传文件,发现没有权限。
3、开启acl权限3.1 修改hdfs-site.xml dfs.namenode.acls.enabled true
开启acl
注意:在低版本的hadoop上默认是禁用的,高版本默认是开启的。
3.2 重启hdfs集群[hadoopdeploy@hadoop01 ~]$ stop-dfs.shStopping namenodes on [hadoop01]Stopping datanodesStopping secondary namenodes [hadoop03][hadoopdeploy@hadoop01 ~]$ start-dfs.shStarting namenodes on [hadoop01]Starting datanodesStarting secondary namenodes [hadoop03][hadoopdeploy@hadoop03 ~]$
3.3 使用acl给root用户授权[hadoopdeploy@hadoop01 ~]$ hdfs dfs -setfacl -m user:root:rwx /projectA[hadoopdeploy@hadoop01 ~]$ hdfs dfs -getfacl /projectA# file: /projectA# owner: hadoopdeploy# group: supergroupuser::rwxuser:root:rwxgroup::rwxmask::rwxother::---[hadoopdeploy@hadoop01 ~]$
使用acl给root用户授权
3.4 使用 root 用户测试文件上传[root@hadoop01 ~]# hdfs dfs -put anaconda-ks.cfg /projectA[root@hadoop01 ~]# hdfs dfs -ls /projectAFound 1 items-rw-r--r-- 2 root supergroup 1151 2023-05-24 21:10 /projectA/anaconda-ks.cfg[root@hadoop01 ~]#
可以看到文件上传成功了。
4、acl的一些简单命令acl语法
hdfs dfs -setfacl -m user:root:rwx /projectA对root用户设置hdfs dfs -setfacl -m group:root:rwx /projectA对root组设置
4.1 设置aclhdfs dfs -setfacl -m user:root:rwx /projectA
将/projectA这个目录授予root用户rwx权限。
4.2 查看acl[hadoopdeploy@hadoop01 ~]$ hdfs dfs -getfacl /projectA# file: /projectA# owner: hadoopdeploy# group: supergroupuser::rwxuser:root:rwxgroup::rwxmask::rwxother::---[hadoopdeploy@hadoop01 ~]$ hdfs dfs -ls /Found 1 itemsdrwxrwx---+ - hadoopdeploy supergroup 0 2023-05-24 21:10 /projectA[hadoopdeploy@hadoop01 ~]$
drwxrwx---+这个+表示有acl权限
4.3 移除某个用户的acl[hadoopdeploy@hadoop01 ~]$ hdfs dfs -setfacl -x user:root /projectA[hadoopdeploy@hadoop01 ~]$ hdfs dfs -getfacl /projectA# file: /projectA# owner: hadoopdeploy# group: supergroupuser::rwxgroup::rwxmask::rwxother::---[hadoopdeploy@hadoop01 ~]$
移除某个用户的acl
4.4 删除该目录所有的acl权限[hadoopdeploy@hadoop01 ~]$ hdfs dfs -setfacl -b /projectA[hadoopdeploy@hadoop01 ~]$ hdfs dfs -getfacl /projectA# file: /projectA# owner: hadoopdeploy# group: supergroupuser::rwxgroup::rwxother::---[hadoopdeploy@hadoop01 ~]$
5、参考链接1、https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/FileSystemShell.html#setfacl
上一篇: 国色·芒种:家家麦饭美,处处菱歌长丨一帧中国 今日最新
下一篇: 最后一页
X 关闭
X 关闭
爱美之心人皆有之。都说头发是人的第二张脸,如果头发毛躁、像枯草一样,就算再美的颜值,在别人眼中也会大打折扣。怎么样打造柔顺健康的秀
(上海战疫录)上海高校架“云梯” 校企隔空交流保就业服务不断线 中新网上海4月23日电(记者陈静)新冠肺炎疫情防控之下,即将走上社
中新网西宁4月23日电 (孙睿 赵倩)记者23日从青海省格尔木市官方获悉,柴达木盆地首家“护蕾女童温馨小屋”——青海省妇女儿童保护“
(上海战疫录)守“沪”日志:沪人居家“读”处 “文艺团购”线上送“书香” 中新网上海4月23日电 题:守“沪”日志:沪人居家“读
(抗击新冠肺炎)内蒙古满洲里新增3例本土确诊病例 年龄最大的86岁 中新网满洲里4月23日电 (记者 张玮)23日,内蒙古自治区满洲里市
中新网北京4月23日电 (徐婧)北京市疾病预防控制中心副主任、全国新型冠状病毒肺炎专家组成员庞星火在23日的疫情防控新闻发布会上通报
中新网兰州4月23日电 (记者 冯志军)中国核城“四〇四”,曾被网友称为“一个地图上找不到的地方”,近年开始在甘肃嘉峪关市城区建起
(上海战疫录)增援民警诉说方舱里的“生活百态” 中新网上海4月23日电 题:增援民警诉说方舱里的“生活百态” 作者 李姝徵 宋
中新网北京4月23日电(徐婧)北京市朝阳区人民政府副区长杨蓓蓓在23日召开的北京疫情防控新闻发布会上表示,全区学校每周进行三次全员核
中新网北京4月23日电(徐婧)北京市朝阳区人民政府副区长杨蓓蓓在23日召开的北京疫情防控新闻发布会上表示,潘家园街道松榆东里11号楼、4