Hadoop hdfs 访问权限问题
访问DFS时候。出现:
Permission denied: user=dr.who, access=READ_EXECUTE, inode="/user":root:supergroup:drwx-wx-wx
问题.
二、分析
在浏览器查看目录和删除目录及文件,为什么会是dr.who,dr.who其实是hadoop中http访问的静态用户名,并没有啥特殊含义,可以在core-default.xml中看到其配置.
hadoop.http.staticuser.user=dr.who
我们可以通过修改core-site.xml,配置为当前用户,
<property> <name>hadoop.http.staticuser.user</name> <value>root</value> </property>
hdfs的默认配置hdfs-default.xml发现hdfs默认是开启权限检查的。
1 | dfs.permissions.enabled=true #是否在HDFS中开启权限检查,默认为true |
解决方法为:
在Hadoop的配置文件core-site.xml中增加如下配置:
<!-- 当前用户全设置成root --> <property> <name>hadoop.http.staticuser.user</name> <value>root</value> </property> <!-- 不开启权限检查 --> <property> <name>dfs.permissions.enabled</name> <value>false</value> </property>
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步