浏览HDFS的权限被拒绝

时间:2018-02-06 10:20:29

标签: hadoop hdfs permission-denied

我正在学习HadoopSpark环境,并且我成功地安装了这两个环境。

但是,当我想进入HDFS管理(localhost:50070/explorer)并且我想点击tmp时,我遇到了这个问题:

Permission denied: user=dr.who, access=READ_EXECUTE, inode="/tmp":valentin:supergroup:drwx-wx-wx

enter image description here

我尝试使用以下命令更改权限:

hdfs dfs –chmod –R 755 /valentin

但我明白了:

–chmod: Unknown command

奇怪,因为我有:

valentin@hadoop:~/hadoop-2.9.0$ bin/hdfs dfs -ls /
18/02/06 11:55:38 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Found 1 items
drwx-wx-wx   - valentin supergroup          0 2018-02-06 11:36 /tmp

你能帮我找到一个解决方案,以便将.txt文件上传到我的tmp目录吗?

我在.bashrc:

export HADOOP_HOME=/home/valentin/hadoop-2.9.0
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"

export JAVA_HOME="/usr/lib/jvm/java-8-oracle"

1 个答案:

答案 0 :(得分:1)

该错误来自Bash,而不是Hadoop CLI

你的连字符错了。您提供了,预计-(是的,有差异)

当你从没有良好代码格式的随机网站上复制终端命令时,通常会发生这种情况。

如果你想设置/ tmp

,你给了错误的目录

您可能还想了解hdfs网站中设置的"fs.permissions.umask-mode"

默认设置为022,但看起来你是011

tmp可以是全局RWX

hadoop dfs -chmod -R 1777 /tmp

一旦你完成所有工作,如果你想实际运行mapreduce和东西,你需要

hadoop fs -mkdir -p /user/valentin
hadoop fs -chmod -R 750 /user/valentin
hadoop fs -chown -R  valentin  /user/valentin