AccessControlException Hadoop

时间:2013-09-14 22:40:53

标签: hadoop

我想以root身份执行命令:

  

bin / hadoop fs -mkdir data_wm

但我得到了:

  

mkdir:org.apache.hadoop.security.AccessControlException:权限   否认:user = root,access = WRITE,   索引节点= “”:乔治亚娜:超组:rwxr-XR-X

我在伪分布式模式下配置了hadoop,如下所示:http://hadoop.apache.org/docs/stable/single_node_setup.html#PseudoDistributed

我也尝试将其放在hdfs-site.xml中,但不起作用。

 <property>
     <name>dfs.permissions</name>
     <value>false</value>
 </property>

有没有人知道如何解决这个问题。

2 个答案:

答案 0 :(得分:1)

权限问题,因为您为组中的所有用户提供了完整的读写和执行权限

针对此问题尝试此命令

hadoop datanode -start 如果它建议回滚然后执行-rollback命令 然后它会给你一个权限错误

转到您的dfs位置。

更改数据文件夹的权限

chmod 755

drwxr-xr-x 6 hduser hadoop 4096 Sep 13 18:49数据 drwxrwxr-x 5 hduser hadoop 4096 Sep 13 18:49名称

答案 1 :(得分:0)

您正在hdfs目录bin / hadoop fs -mkdir data_wm中创建目录,这意味着当您以root身份登录时,在用户georgiana内,即 / user / georgiana / data_wm 。您没有根据权限msg:

向其他用户授予写入权限

rwxr-xr-x

  • 前3位rwx:文件/目录的所有者拥有完全权限。
  • 下一个3位数r-x:组级别权限,表示该组中的每个其他用户。
  • 接下来的3位数r-x:除了小组以外的其他人。

使用 su georgiana 将用户更改为georgiana并输入密码,但如果您打算使用root用户在/ user / georgiana中使用mkdir,请为此目录指定相应的权限。

hadoop fs -chmod 777 / user / georgiana /

表示对同一组内的用户以及该组外的其他用户的完全权限。

干杯!