我在Ubuntu 13 64位机器中使用Hadoop 2.4.0
。 Hadoop已成功安装,但在运行基本命令时(如
#hadoop fs -mkdir /tmp
我收到以下错误:
WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
在深入了解问题之后,由于32/64
位本机库兼容性问题而出现问题。我已经按照几个博客的建议,通过maven发布重建了hadoop src。
但问题仍然存在。无法找到任何解决方案?
答案 0 :(得分:0)
首先,这只是一个警告,可以忽略。
如果您想要消除此警告,下载Hadoop的源代码并在64位系统上重新编译hadoop,然后替换32位系统。
Ubuntu包含了如何重新编译源代码的步骤:
http://www.ercoppa.org/Linux-Compile-Hadoop-220-fix-Unable-to-load-native-hadoop-library.htm http://www.csrdu.org/nauman/2014/01/23/geting-started-with-hadoop-2-2-0-building/
答案 1 :(得分:0)
将已编译的本机库文件移动到$ HADOOP_HOME / lib文件夹。
然后通过编辑.bashrc文件
设置环境变量export HADOOP_COMMON_LIB_NATIVE_DIR = $ HADOOP_HOME / lib export HADOOP_OPTS =" $ HADOOP_OPTS -Djava.library.path = $ HADOOP_HOME / lib"
确保已编译的本机库文件位于$ HADOOP_HOME / lib文件夹中。
它应该有用。