hadoop - 配置单元权限被拒绝,插入覆盖目录

标签 hadoop permissions hive hdfs

运行以下命令时,我从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.insert.into.multilevel.dirs=true

最佳答案

打开一个新终端,然后尝试以下操作:

1.)将用户更改为root:

su

2.)将用户更改为hdfs:
su hdfs

3.)然后运行以下命令:
hadoop fs -chown -R hadoop /user/hadoop/a

现在您可以尝试运行的命令了。

希望能帮助到你...!!!

关于hadoop - 配置单元权限被拒绝,插入覆盖目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26524891/

相关文章:

java - 在文件夹和子文件夹中的文件上运行Mapreduce

winapi - CreateProcessAsUser() 给出 "A required privilege is not held by the client"哪一个?

c# - 如何授予所有用户对我的应用程序创建的文件的完全权限?

apache-spark - Parquet 表中的TIMESTAMP列CDH5与CDH6

hadoop - hive 删除表不起作用

hadoop - 使用 HDFS+Map Reduce 的示例应用程序

mysql - 从 Hadoop Reducer 向 MySQL 写入数据

java - 无法在Java中的SparkSQL中读取文件

javascript - 避免从其他网站加载我的 js/css 文件

hadoop - ClassNotFoundException : org. apache.spark.SparkConf 与配置单元上的 Spark