【发布时间】:2014-10-23 09:17:14
【问题描述】:
我在运行以下命令时从 hdfs 收到权限被拒绝失败:
hive -e "insert overwrite directory '/user/hadoop/a/b/c/d/e/f' select * from table_name limit 10;"
错误信息是:
Permission denied: user=hadoop, access=WRITE, inode="/user/hadoop/a/b":hdfs:hive:drwxrwxr-x
但是当我运行时:hadoop fs -ls /user/hadoop/a,我得到:
drwxrwxrwx - hadoop supergroup 0 2014-04-08 00:56 /user/hadoop/a/b
好像我打开了文件夹b的完全权限,为什么还是被拒绝?
PS:我在 hive 配置文件中设置了hive.insert.into.multilevel.dirs=true。
【问题讨论】:
-
其他嵌套目录呢?你试过'hadoop fs -chmod 777 -R /user/hadoop/a'吗?
-
@arghtype 是的,我已经尝试过了,但它仍然不起作用。我想知道为什么 hive 获得权限“drwxrwxr-x”而“hadoop fs -ls”获得同一文件夹的权限“drwxrwxrwx”?
标签: hadoop permissions hive hdfs