我目前正在运行CentO的服务器上配置hadoop 。运行start-dfs.sh或时stop-dfs.sh,出现以下错误:
start-dfs.sh
stop-dfs.sh
WARN util.NativeCodeLoader:无法为你的平台加载本地hadoop库…在适当情况下使用内置java类
我正在运行Hadoop 2.2.0。
在线进行搜索会显示以下链接:http : //balanceandbreath.blogspot.ca/2013/01/utilnativecodeloader-unable-to-load.html
但是,/native/hadoop 2.x上的目录内容似乎有所不同,因此我不确定该怎么做。
/native/hadoop 2.x
我还在以下位置添加了这两个环境变量hadoop-env.sh:
hadoop-env.sh
export HADOOP_OPTS =“ $ HADOOP_OPTS -Djava.library.path = / usr / local / hadoop / lib /”
导出HADOOP_COMMON_LIB_NATIVE_DIR =“ / usr / local / hadoop / lib / native /”
有任何想法吗?
我假设你在64位CentOS上运行Hadoop。你看到警告的原因是本地Hadoop库$HADOOP_HOME/lib/native/libhadoop.so.1.0.0实际上是在32位上编译的。
Hadoop
$HADOOP_HOME/lib/native/libhadoop.so.1.0.0
无论如何,这只是一个警告,不会影响Hadoop的功能。
如果你确实想消除此警告,请采用以下方法:下载Hadoop的源代码并libhadoop.so.1.0.0在64位系统上重新编译,然后替换32位。
libhadoop.so.1.0.0