在用beeline连接hive查询表数据时,出现错误权限不够
ERROR : Job Submission failed with exception 'org.apache.hadoop.security.AccessControlException
(Permission denied: user=anonymous, access=WRITE, inode="/user":hdfs:supergroup:drwxr-xr-x
at org.apache.hadoop.hdfs.server.namenode.DefaultAuthorizationProvider.checkFsPermission(DefaultAuthorizationProvider.java:279)
at org.apache.hadoop.hdfs.server.namenode.DefaultAuthorizationProvider.check(DefaultAuthorizationProvider.java:260)
at org.apache.hadoop.hdfs.server.namenode.DefaultAuthorizationProvider.check(DefaultAuthorizationProvider.java:240)
at org.apache.hadoop.hdfs.server.namenode.DefaultAuthorizationProvider.checkPermission(DefaultAuthorizationProvider.java:162)
可以看出默认登入使用的是anonymous用户,而对应的表在hdfs上的目录为:
drwxr-xr-x - hdfs supergroup
总的来说,出除了hdfs用户,其他用户对文件读写可能都会有问题,就算使用root用户上传文件,也会报权限不够。通常的办法是改目录权限:<