解决Hadoop无法加载本地库的问题: Unable to load native-hadoop library for your platform

  今天跑Hadoop程序时一直提示我无法加载本地库,然后就直接退出运行了,如下图所示。

  原因是由于Apache提供的Hadoop本地库是32位的,而在64位的服务器上就会有问题,因此需要自己编译64位的版本。下载地址:http://dl.bintray.com/sequenceiq/sequenceiq-bin/。请下载好对应版本的.tar包,然后上传到Hadoop集群上,然后分别解压到HADOOP_HOME/lib和HADOOP_HOME/lib/native路径下。

  tar -xvf hadoop-native-64-2.6.0.tar -C hadoop-2.6.0/lib/native 
  tar -xvf hadoop-native-64-2.6.0.tar -C hadoop-2.6.0/lib  

  然后,向/etc/profile配置文件中添加环境变量配置。

  vi /etc/profile
  export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native  
  export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib" 

  执行以下命令使配置生效:

  source /etc/profile

  到此,本地库就能正常加载了。可以通过以下命令进行自检:

  hadoop checknative –a 

 

以上就是博主为大家介绍的这一板块的主要内容,这都是博主自己的学习过程,希望能给大家带来一定的指导作用,有用的还望大家点个支持,如果对你没用也望包涵,有错误烦请指出。如有期待可关注博主以第一时间获取更新哦,谢谢! 

 

 版权声明:本文为博主原创文章,未经博主允许不得转载。

posted @ 2018-04-14 20:32  子墨言良  阅读(2422)  评论(0编辑  收藏  举报