hadoop安装错误消息

时间:2014-05-19 19:19:52

标签: hadoop

  

hadoop OpenJDK Server VM警告:您已加载库   /usr/lib/hadoop/lib/native/libhadoop.so.1.0.0可能有   残疾人堆栈守卫。 VM将尝试立即修复堆栈防护。它的   强烈建议您使用'execstack -c修复库   ',或用'-z noexecstack'链接。

我在尝试安装hadoop-yarn-resourcemanger时收到此消息,因为hadoop个软件包的所有其他安装都显示您的系统上的软件包已损坏。如何解决这个问题?感谢

2 个答案:

答案 0 :(得分:1)

我得到了同样的错误并且不痛苦。您收到此错误的原因是库文件/usr/lib/hadoop/lib/native/libhadoop.so.1.0.0不适用于64位底层架构。因此,我确信您使用64位Linux进行安装。 ;)

你可以做两件事。首先,更正确的方法是yu可以重建库,但那是一个很长的过程。

我所做的是第二个也是更简单的方法。我在32位Ubuntu上重新安装它,它对我来说很好。

答案 1 :(得分:1)

我在运行Ubuntu 14.04 64bit和Java 1.7.0_75的集群上安装Hadoop 2.2时遇到了同样的错误。 (我无法将其降级到32位。)以下是我编译本机库的方法。

本地库的Hadoop 2.5页面很有帮助,它提供了所需的mvn命令: http://hadoop.apache.org/docs/r2.5.0/hadoop-project-dist/hadoop-common/NativeLibraries.html#Build

  1. 确保在linux上符合先决条件。你必须使用maven版本3!

    apt-get install cmake autoconf automake libtool gcc zlib1g-dev pkg-config libssl-dev openssl maven
    
  2. https://archive.apache.org/dist/hadoop/core

  3. 下载Hadoop源代码tarball
  4. 打开包装和调查:

    tar xzpf hadoop-2.2.0-src.tar.gz
    cd hadoop-2.2.0-src
    
  5. 构建本机库(不是所有内容):

    cd hadoop-common-project/hadoop-common
    mvn package -Pdist,native -DskipTests=true -Dtar
    
  6. 将生成的.so文件复制到二进制区域。

    cp target/hadoop-common-2.2.0/lib/native/libhadoop.so.1.0.0 /home/hadoop/hadoop-2.2.0/lib/native/
    
  7. 通过启动守护程序进行测试,以查看警告是否已禁用堆栈保护' (见上文)仍然出现:

    /home/hadoop/hadoop-2.2.0/sbin/hadoop-daemon.sh start namenode n
    
  8. 我在Hadoop源版本2.2.0和2.5.2上进行了测试。

    @ user2345523 @DivyangShah希望这有帮助