Hadoop入门-hadoop 32&64区别

hadoop在安装的时候,我们需要知道hadoop版本是32位还是64位。

hadoop官网本来提供的都是32位,因为我们大部分都是64位,所以不得不编译。后来官网从hadoop2.5版本开始就提供了64位。
为了防止我们用错,下面我们来实际操作和观察。

我们来从官网下载的hadoop2.4.1安装包.
hadoop是32位还是64位,我们查看本地库即可。即进入$hadoop_home/lib/native,使用file命令
#####################################
解压之后,我们进入

hadoop-2.4.1/lib/native
使用file命令:

file libhadoop.so.1.0.0

libhadoop.so.1.0.0: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, BuildID[sha1]=0xd3669af32f519c52b4e6200a69bec8ad7b26df85, not stripped


接着我们看下hadoop2.5官网下载安装包,这时候官网下载的安装包,就已经是64位了

接着我们看下当前最新版本hadoop2.7

/hadoop-2.7.0/lib/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, BuildID[sha1]=0xc44a02ed2f540f8c91dc6da31ec5758a2474641c, not stripped



[b][size=large]32位Linux下安装64位Hadoop的问题[/size][/b]

在/hadoop-2.5.2/bin下执行: ./hdfs dfs -mkdir -p ~/hdfile
之后报出错误提示信息:
Java HotSpot(TM) Client VM warning: You have loaded library /home/wluser/hadoop-2.5.2/lib/native/libhadoop.so.1.0.0 which might have disabled stack guard. The VM will try to fix the stack guard now.
It's highly recommended that you fix the library with 'execstack -c ', or link it with '-z noexecstack'.
15/08/06 00:49:06 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

之后发现,我安装的是64位的hadoop,与32位的linux系统环境相冲突,导致在执行命令时无法加载hadoop的native library。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值