我遇到了以下权限错误,不确定为什么Hadoop正在尝试写入这个特定的文件夹:
hadoop jar /usr/lib/hadoop/hadoop-*-examples.jar pi 2 100000
Number of Maps = 2
Samples per Map = 100000
Wrote input for Map #0
Wrote input for Map #1
Starting Job
org.apache.hadoop.security.AccessControlException: org.apache.hadoop.security.AccessControlException: Permission denied: user=myuser, access=WRITE, inode="/":hdfs:supergroup:drwxr-xr-x
有什么想法,为什么它正在尝试写入我的HDFS根目录?更新:在临时设置hdfs根(/)为777权限后,我发现正在写一个“/tmp”文件夹。 我想一个选择是只需创建一个"/tmp"文件夹,允许所有人都有权限进行写入,但从安全的角度来看,最好将其写入用户文件夹中(即/user/myuser/tmp)。
mapreduce.jobtracker.staging.root.dir
设置指向 HDFS 上的一个位置。 - Dolan Antenucci