【发布时间】:2013-11-06 09:21:22
【问题描述】:
为最新的 hadoop-2.2 版本启动 namenode 时出现以下错误。我没有在 hadoop bin 文件夹中找到 winutils exe 文件。我尝试了以下命令
$ bin/hdfs namenode -format
$ sbin/yarn-daemon.sh start resourcemanager
ERROR [main] util.Shell (Shell.java:getWinUtilsPath(303)) - Failed to locate the winutils binary in the hadoop binary path
java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.
at org.apache.hadoop.util.Shell.getQualifiedBinPath(Shell.java:278)
at org.apache.hadoop.util.Shell.getWinUtilsPath(Shell.java:300)
at org.apache.hadoop.util.Shell.<clinit>(Shell.java:293)
at org.apache.hadoop.util.StringUtils.<clinit>(StringUtils.java:76)
at org.apache.hadoop.yarn.server.resourcemanager.ResourceManager.main(ResourceManager.java:863)
【问题讨论】:
-
试图摆脱该错误消息,我将 -Dhadoop.home.dir 设置为有意义的值。现在我得到类似(本地路径替换为变量名):在 Hadoop 二进制文件中找不到可执行文件 ${HADOOP_HOME}\bin\winutils.exe。猜猜看:设置变量并没有使该二进制文件出现。优先级 ERROR 也是错误的,因为应用程序似乎仍在继续。在我看来,这是 Hadoop 2.2.0 中的一个错误。
-
有一个(根据今天开放的)jira 用于此>issues.apache.org/jira/browse/HADOOP-10051
-
有一个HADOOP-11003。
-
请接受Prasad D的回答。他提供了现成的文件供使用;从而避免努力。
标签: hadoop