栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=EXECUTE, ino

org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=EXECUTE, ino

 前置操作: hive-site.xml 拷贝到 sparkconf/目录    ;  启动了hadoop集群,    启动spark ;    sbin/start-thriftserver.sh   ; bin/beeline -u jdbc:hive2://hadoop102:10000 -n root 

就报错了:

Connecting to jdbc:hive2://hadoop102:10000
Error: Could not open client transport with JDBC Uri: jdbc:hive2://hadoop102:10000: Failed to open new session: java.lang.RuntimeException: java.lang.RuntimeException: org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=EXECUTE, inode="/tmp":tm:supergroup:drwxrwx---
 at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.check(FSPermissionChecker.java:399)
        at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkTraverse(FSPermissionChecker.java:315)
        at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkPermission(FSPermissionChecker.java:242)
        at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkPermission(FSPermissionChecker.java:193)
        at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkTraverse(FSPermissionChecker.java:606)
        at org.apache.hadoop.hdfs.server.namenode.FSDirectory.checkTraverse(FSDirectory.java:1804)
        at org.apache.hadoop.hdfs.server.namenode.FSDirectory.checkTraverse(FSDirectory.java:1822)
        at org.apache.hadoop.hdfs.server.namenode.FSDirectory.resolvePath(FSDirectory.java:677)
        at org.apache.hadoop.hdfs.server.namenode.FSDirStatAndListingOp.getFileInfo(FSDirStatAndListingOp.java:114)
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getFileInfo(FSNamesystem.java:3131)
        at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.getFileInfo(NameNodeRpcServer.java:1173)
        at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.getFileInfo(ClientNamenodeProtocolServerSideTranslatorP

原因:(不理解)

hdfs上没有root用户,也没有对应的文件夹/user/root

会默认以root身份去将作业写入hdfs文件系统中,对应的也就是 HDFS 上的/user/xxx , 我的为/user/root,   由于 root用户对hdfs目录并没有写入权限,所以导致异常的发生。而hdfs才有权限创建/user/root

解决方案一(解决简单,但是不推荐)

(1)查看sudoers文件,看是否有添加tm ALL=(ALL) ALL;

这里tm是一个用户

(2)查看hdfs-site.xml配置文件permission下是否为false。


    dfs.permissions
    false

重启集群即可

还有其他方案看不懂:参考博客

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/780145.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号