beebe_3 发表于 2018-10-30 07:19:05

hadoop2.x异常


Win下Eclipse提交hadoop程序出错:org.apache.hadoop.security.AccessControlException: Permission denied:
Win下Eclipse提交hadoop程序出错:org.apache.hadoop.security.AccessControlException: Permission denied: user=administrator, access=WRITE
  描述:在window下使用Eclipse进行hadoop的程序编写,然后Run on hadoop 后,出现如下错误:
  11/10/28 16:05:53 INFO mapred.JobClient: Running job: job_201110281103_0003
  11/10/28 16:05:54 INFO mapred.JobClient: map 0% reduce 0%

  11/10/28 16:06:05 INFO mapred.JobClient: Task>  org.apache.hadoop.security.AccessControlException: org.apache.hadoop.security.AccessControlException: Permission denied: user=administrator, access=WRITE, inode="hadoop":hadoop:supergroup:rwxr-xr-x
  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
  at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
  因为Eclipse使用hadoop插件提交作业时,会默认以administrator身份去将作业写入hdfs文件系统中,对应的也就是 HDFS 上的/user/xxx , 我的为/user/hadoop ,   由于 administrator 用户对hadoop目录并没有写入权限,所以导致异常的发生。解决方法为:放开 hadoop 目录的权限 , 命令如下 :$hadoop fs -chmod 777 /user/hadoop
http://blog.csdn.net/keda8997110/article/details/8432161
  --------------------------------------------------------------------------------------------------------------------------------------------------
  问题:
  Windows|Eclipse 运行HDFS程序之后,报:org.apache.hadoop.security.AccessControlException: Permission denied: user=sunqw, access=WRITE, inode="":hadoop:supergroup:rwxr-xr-x。
  或者
  Windows|Eclipse 运行HDFS程序之后,报:org.apache.hadoop.security.AccessControlException: Access denied for user sunqw. 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的用户一致。

页: [1]
查看完整版本: hadoop2.x异常