1.      hadoop启动报错

1.1.    问题1

util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

主要是依赖包 版本 过低的问题。

首先要定位问题,出现该问题的原因主要是hadoop native下面的hadoop静态库的问题:

libhadoop.so.1.0.0

原因一:

网上有很多说法是版本 默认 64位 而 系统是  32位,验证一下:

先看下系统版本:

uname -r

再看下  libhadoop.so.1.0.0 库 的版本

file  libhadoop.so.1.0.0

[root@master native]# file libhadoop.so.1.0.0

libhadoop.so.1.0.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, not stripped

可以看到并不是版本的问题。

原因二 :

其实是依赖库的问题

对静态库查看下依赖:看下依赖是否都正常:

ldd libhadoop.so.1.0.0

./libhadoop.so.1.0.0: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./libhadoop.so.1.0.0)

linux-vdso.so.1 =>  (0x00007fff369ff000)

libdl.so.2 => /lib64/libdl.so.2 (0x00007f3caa7ea000)

libc.so.6 => /lib64/libc.so.6 (0x00007f3caa455000)

/lib64/ld-linux-x86-64.so.2 (0x00007f3caac1b000)

可以看到是glibc 版本的问题:

GLIBC_2.14找不到,现在检查系统的glibc库,  ldd --version  即可检查。

输入命令:

ldd --version

ldd (GNU libc) 2.12

Copyright (C) 2010 Free Software Foundation, Inc.

This is free software; see the source for copying conditions.  There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

还可以直接确认下glibc 目前支持的版本:

通过如下查询方法:

strings /lib64/libc.so.6|grep GLIBC

[root@soft native]# strings /lib64/libc.so.6|grep GLIBC

GLIBC_2.2.5

GLIBC_2.2.6

GLIBC_2.3

GLIBC_2.3.2

GLIBC_2.3.3

GLIBC_2.3.4

GLIBC_2.4

GLIBC_2.5

GLIBC_2.6

GLIBC_2.7

GLIBC_2.8

GLIBC_2.9

GLIBC_2.10

GLIBC_2.11

GLIBC_2.12

GLIBC_PRIVATE

[root@soft native]#

可以看到目前只支持到 2.12

那么现在需要升级 glibc 库就行了。

1.2.    升级glibc

Glibc 升级采用源码编译安装的方法:

wget  http://ftp.gnu.org/gnu/glibc/glibc-2.17.tar.gz

tar -xf glibc-2.17.tar.gz

cd glibc-2.17

mkdir build; cd build

../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin

make -j 8

make  install

strings /lib64/libc.so.6 | grep GLIBC

这时已经有了2.17

重启start-dfs.sh,报错继续。

原因三 :

环境配置的问题:

在hadoop-env.sh中,添加下面配置:

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native

export  HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib:$HADOOP_COMMON_LIB_NATIVE_DIR"

在修改完成后需要重新执行

hadoop namenode –format

然后再启动。

hadoop启动报错处理的更多相关文章

  1. hadoop启动报错:localhost: ssh: Could not resolve hostname localhost

    hadoop启动journalnode时报错:localhost: ssh: Could not resolve hostname localhost: Temporary failure in na ...

  2. Hbase master启动报错:Failed construction of Master: class org.apache.hadoop.hbase.master.HMaster Caused by: java.net.UnknownHostException:

    Hbase master启动报错: java.lang.RuntimeException: Failed construction of Master: class org.apache.hadoop ...

  3. eclipse运行hadoop程序报错:Connection refused: no further information

    eclipse运行hadoop程序报错:Connection refused: no further information log4j:WARN No appenders could be foun ...

  4. 【原创】大叔问题定位分享(29)datanode启动报错:50020端口被占用

    集群中有一台datanode一直启动报错如下: java.net.BindException: Problem binding to [$server1:50020] java.net.BindExc ...

  5. 【原创】大叔问题定位分享(24)hbase standalone方式启动报错

    hbase 2.0.2 hbase standalone方式启动报错: 2019-01-17 15:49:08,730 ERROR [Thread-24] master.HMaster: Failed ...

  6. Hbasewindows系统下启动报错及解决办法

    今天在本地windows电脑上,装pinpoint时,需要先安装一个Hbase数据库,按照教程下载启动Hbase数据库时,却启动报错:java.io.IOException: Could not lo ...

  7. hbase shell 启动报错

    启动hbase之后,发现hbase shell启动报错: version 2.0.0-alpha4, r5c4b985f89c99cc8b0f8515a4097c811a0848835, Tue Oc ...

  8. Hadoop0.20.203.0在关机重启后,namenode启动报错(/dfs/name is in an inconsistent state)

    Hadoop0.20.203.0在关机重启后,namenode启动报错: 2011-10-21 05:22:20,504 INFO org.apache.hadoop.hdfs.server.comm ...

  9. 【原创】大叔经验分享(67)spring boot启动报错

    spring boot 启动报错: Caused by: java.lang.IllegalArgumentException: LoggerFactory is not a Logback Logg ...

随机推荐

  1. 【资源分享】Dll Injector(DLL注入器)

    *----------------------------------------------[下载区]----------------------------------------------* ...

  2. jmeter实现一次登录,多次业务请求(不同线程组间共享cookie和变量)

    实现目的 很多时候,在进行性能测试时,需要先登录,然后再对需求的事务进行相关性能测试,此时的登录操作,并不在本次性能测试的范围内,所以我们只需要登录一次,然后获取登录成功后的cookie等,并将coo ...

  3. GBK与Unicode的转换

    一.GBK转换到Unicode编码 std::string Gbk2Unicode(std::string &strValue) { std::string strReturn; unsign ...

  4. Django 报错no sucn column: OpretionalError

    1.报错原因:新增的字段未能同步数据库 2.解决办法:删除整个数据库,然后重新编译,然后over 1.rm -rf db.sqlites3 #删除数据库 2.rm -rf cmdb/migrarion ...

  5. Redis安装及局域网访问配置CentOS

    1.安装gcc,用来编译reids 通过命令 sudo yum install gcc 2.安装redis $ wget http://download.redis.io/releases/redis ...

  6. 负环--spfa

    洛谷板子题 负环?是有负权边的环还是一个边权之和为负的环? 还没有准确的定义(那就先忽略吧qwq 判断负环的方法: 暴力枚举/spfa/mellman—ford/奇怪的贪心/超神的搜索 可惜我只会sp ...

  7. wireshark抓本地包

    # wireshark抓本地包 1. wireshark抓本地包 windows系统没有提供本地回环网络的接口,用wireshark监控网络的话只能看到经过网卡的流量,看不到访问localhost的流 ...

  8. [转]Serverless

    说起当前最火的技术,除了最新的区块链,AI,还有一个不得不提的概念是Serverless.Serverless作为一种新型的互联网架构直接或间接推动了云计算的发展,从AWS Lambda到阿里云函数计 ...

  9. ES6-形参默认值

    在定义一个函数的时候,我们定义了几个函数的参数,但是在调用的时候我们可能并没有传入足够的参数,那么未被满足的参数的值就是undefined,在ES6中如果有这种情况我们可以给形参一个默认值,如果该形参 ...

  10. 激活4500-X RTU license

    1.查看设备license Switch#sho version Cisco IOS Software, IOS-XE Software, Catalyst 4500 L3 Switch Softwa ...