kingforce 发表于 2018-10-31 11:43:47

Hadoop PriviledgedActionException: Failed to set permissions 解决办法

  错误描述:
  13/09/12 17:59:00 ERROR security.UserGroupInformation: PriviledgedActionException as:leo cause:java.io.IOException: Failed to set permissions of path: \tmp\hadoop-leo\mapred\staging\leo480143202\.staging to 0700
  Exception in thread "main" java.io.IOException: Failed to set permissions of path: \tmp\hadoop-leo\mapred\staging\leo480143202\.staging to 0700
  at org.apache.hadoop.fs.FileUtil.checkReturnValue(FileUtil.java:691)
  at org.apache.hadoop.fs.FileUtil.setPermission(FileUtil.java:664)
  at org.apache.hadoop.fs.RawLocalFileSystem.setPermission(RawLocalFileSystem.java:514)
  at org.apache.hadoop.fs.RawLocalFileSystem.mkdirs(RawLocalFileSystem.java:349)
  at org.apache.hadoop.fs.FilterFileSystem.mkdirs(FilterFileSystem.java:193)
  该bug见https://issues.apache.org/jira/browse/HADOOP-7682
  解决方法:
  修改FileUtil类checkReturnValue方法重新放入hadoop-core.jar中,
  http://blog.csdn.net/java2000_wl/article/details/7598040 提供了hadoop-core-1.0.4.jar,但我用的是hadoop-core-1.2.1.jar。于是我将上面jar中的FileUtil.class提取出来,替换了hadoop-core-1.2.1.jar中的文件。
  替换方法:用7-zip或者其他压缩软件打开hadoop-core.jar,找到org\apache\hadoop\fs目录,将FileUtil.class替换原jar包的文件。
  此方法能适用于多版本的hadoop-core.jar,只是需要各位自己动一下手。
  FileUtil.class下载地址
  hadoop-core-1.2.1.jar下载地址

页: [1]
查看完整版本: Hadoop PriviledgedActionException: Failed to set permissions 解决办法