项长老

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

问题:
Windows|Eclipse 运行HDFS程序之后,报:org.apache.hadoop.security.AccessControlException: Permission denied: user=Colin, access=WRITE, inode="":hadoop:supergroup:rwxr-xr-x。
或者
Windows|Eclipse 运行HDFS程序之后,报:org.apache.hadoop.security.AccessControlException: Access denied for user Colin. Superuser privilege is required。

解决方法:
方式一:
在系统环境变量中增加HADOOP_USER_NAME,其值为root;
或者 通过java程序动态添加,如下:
System.setProperty("HADOOP_USER_NAME", "root");

方式二:
使用Eclipse在非hadoop运行的用户下进行写入hdfs文件系统中时,由于sunqw对"/"目录没有写入权限,所以导致异常的发生。解决方法即开放hadoop中的HDFS目录的权限,命令如下:hadoop fs -chmod 777 / 。

方式三:
修改hadoop的配置文件:conf/hdfs-core.xml,添加或者修改 dfs.permissions 的值为 false。

方式四:
将Eclipse所在机器的用户的名称修改为root,即与服务器上运行hadoop的用户一致。

方法五:

eclipse运行时在Run Configurations中添加变量

 

来源http://f.dataguru.cn/thread-281774-1-1.html

posted on 2016-03-19 11:11  项长老  阅读(405)  评论(0编辑  收藏  举报