无法通过Web界面删除HDFS目录,因为我是Dr. Who

时间:2017-11-15 14:58:23

标签: hadoop configuration permissions hdfs

我正在尝试使用http://localhost:50070/explorer.html上的网络界面删除本地HDFS系统上的目录deepnlptest/models。 我的用户名是wmcneill和我试图删除的HDFS目录的权限,封闭的是{mmnene所拥有的drwxr-xr-x

$ hdfs dfs -ls deepnlptest
17/11/16 09:36:11 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Found 5 items
drwxr-xr-x   - wmcneill supergroup          0 2017-11-15 17:09 deepnlptest/canonical-folders
drwxr-xr-x   - wmcneill supergroup          0 2017-11-08 14:35 deepnlptest/data
drwxr-xr-x   - wmcneill supergroup          0 2017-11-15 16:51 deepnlptest/embeddings
drwxr-xr-x   - wmcneill supergroup          0 2017-11-15 16:53 deepnlptest/models
drwxr-xr-x   - wmcneill supergroup          0 2017-11-09 10:28 deepnlptest/pretrained_embeddings

当我尝试使用Web界面删除目录时出现以下错误。

enter image description here

除了删除外,Web界面还可以正常浏览HDFS。我可以通过命令行命令hdfs dfs在HDFS系统上执行所有操作,包括删除目录。

$ hdfs dfs -rm -r deepnlptest/models
17/11/16 09:37:17 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Deleted deepnlptest/models

我认为“dr.who”是默认用户,我需要将我的用户名添加到某些Hadoop配置文件中,但我无法弄清楚哪一个。

我在安装在/usr/local/Cellar/hadoop/2.8.2下方的Mac上运行Hadoop 2.8.2。

2 个答案:

答案 0 :(得分:1)

当您访问Web UI时,您将以 Dr.Who 而非您的用户身份访问群集。

博士。谁没有权限删除您的目录。它是用于浏览的用户。

self.labelText.set("New Label")

参考:Who is Dr.Who?

其他参考:core-default

答案 1 :(得分:0)

万一仍然有人在看,您可以通过在core-site.xml中设置属性来设置用户

<configuration>
...
    <property>
        <name>hadoop.http.staticuser.user</name>
        <value>youruserhere</value>
    </property>
...
</configuration>

这应该覆盖默认的dr.who用户,并允许您从Web界面删除/上传。