Unable to load native-hadoop library for your platform

 

 原因:
Apache提供的hadoop本地库是32位的,而在64位的服务器上就会有问题,因此需要自己编译64位的版本。

解决:

https://blog.csdn.net/jack85986370/article/details/51902871

【参考搬运】1、首先找到对应自己hadoop版本的64位的lib包,可以自己手动去编译,但比较麻烦,也可以去网上找,好多都有已经编译好了的。

2、可以去网站:http://dl.bintray.com/sequenceiq/sequenceiq-bin/  下载对应的编译版本

3、将准备好的64位的lib包解压到已经安装好的hadoop安装目录的lib/native 和 lib目录下:

[hadoop@hadoopTest ~]$ tar -xvf hadoop-native-64-2.7.0.tar -C hadoop-2.7.2/lib/native
[hadoop@hadoopTest ~]$ tar -xvf hadoop-native-64-2.7.0.tar -C hadoop-2.7.2/lib
4、然后增加环境变量:

[hadoop@hadoopTest hadoop-2.7.2]$ vi /etc/profile
5、增加下面的内容:

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
6、让环境变量生效

[hadoop@hadoopTest hadoop-2.7.2]$ source /etc/profile

7、自检hadoop checknative –a 指令检查

<pre name="code" class="java">[hadoop@hadoopTest hadoop-2.7.2]$ hadoop checknative –a

posted @ 2020-06-12 14:54  俞林初上  阅读(308)  评论(0)    收藏  举报