当前位置: 首页 > 知识库问答 >
问题:

hadoop错误:util.NativeCodeLoader(hdfs DFS-LS不工作!)

耿永寿
2023-03-14
hdfs dfs -ls 
16/09/27 09:43:42 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
ls: `.': No such file or directory  

我已经安装了java和ssh。

哪个java
java是/usr/bin/java
哪个java
javac是/usr/bin/javac
哪个ssh
ssh是/usr/bin/ssh
echo$JAVA_HOME
/usr/lib/jvm/java-9-openjdk-amd64

注:

sudo update-alternatives --config java
There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-9-openjdk-amd64/bin/java       1091      auto mode
  1            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      manual mode
  2            /usr/lib/jvm/java-9-openjdk-amd64/bin/java       1091      manual mode

Press <enter> to keep the current choice[*], or type selection number:

~/.bashrc中的hadoop环境变量

export java_home=/usr/lib/jvm/java-9-openjdk-amd64 export hadoop_install=/hishan/hadoop-2.7.2 export path=$path:$hadoop_install/bin export hadoop_mapred_home=$hadoop_install/sbin export hadoop_common_home=$hadoop_install export hadoop_hdfs_home=$hadoop_install export hadoop_hdfs_home=$hadoop_install export

修改文件:
/home/bhishan/hadoop-2.7.2/etc/hadoop/hadoop-env.sh

在结尾处增加一行:

export JAVA_HOME=/usr/lib/jvm/java-9-openjdk-amd64
<property>  
  <name>dfs.replication</name>  
  <value>1</value>  
  <description>Default block replication.  
  The actual number of replications can be specified when the file is created.  
  The default is used if replication is not specified in create time.  
  </description>  
 </property>  
 <property>  
   <name>dfs.namenode.name.dir</name>  
  <value>file:/home/bhishan/hadoop-2.7.2/etc/hadoop/hadoop_store/hdfs/namenode</value>

 </property>  
 <property>  
   <name>dfs.datanode.data.dir</name>  
   <value>file:/home/bhishan/hadoop-2.7.2/etc/hadoop/hadoop_store/hdfs/datanode</value>

 </property>

c)安装了snappy和python-snappy。

d)在Synaptic manager中,我可以看到lz4 liblz4-1、liblz4-tool,python-lz4,python3-lz4

e)bzip2已安装。

相关链接:
hdfs dfs-ls命令的结果
hdfs dfs ls在配置多个节点后不工作
hadoop fs-ls不工作
Namenode未开始
没有Namenode或Datanode或辅助Namenode停止
hadoop 2.6.1警告:WARN util.nativeCodeLoader
hadoop 2.2.0安装程序(伪分布式模式):错误//WARN util.nativeCodeLoader:无法加载nativeHadoop库
命令“hadoop fs-ls”不起作用

此外,
hadoop FS-mkdir连接异常失败
hadoop集群安装-java.net.connectException:安装配置单元后连接被拒绝
hadoop(本地和主机目标不匹配

帮助将是真正的感激!

共有1个答案

萧宏远
2023-03-14

从这个错误:

hdfs dfs -ls 
16/09/27 09:43:42 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
ls: `.': No such file or directory  

忽略关于本机库的警告--即使有该警告,该命令也能正常工作。

当您运行hdfs dfs-ls没有路径时,它会尝试在hdfs中列出主目录的内容,默认情况下hdfs是/user/。在这种情况下,我怀疑这个问题仅仅是您的用户目录不存在。

hadoop fs -ls /
hadoop fs -mkdir -p /user/<your_user_name>
hadoop fs -ls
 类似资料:
  • 我用Ubuntu 14.04操作系统在本地计算机上安装了单节点Hadoop。现在我将使用HDFS,当我键入一个简单的命令时 它显示以下错误: 我不知道这个错误,我真的很感激如果有人帮我解决这个问题:)

  • 为了参考,我的“jps”命令的输出结果是

  • 我读过这样的文章:使用64位版本的Hadoop运行32位的本机库libhadoop.so.1.0.0可能会导致这个问题。我检查了我的libhadoop.so.1.0.0版本,它是64位。 有什么想法吗?

  • 我想我已经正确安装了hadoop。如果我做我可以看到namenode和datanode,没有问题。 这是不管我是否把'.'或“/”或我所在的任何目录。 这一切意味着什么?我怎样才能得到正常的,预期的输出?我错过了什么?

  • 我想我已经正确安装了hadoop。如果我做了我可以看到namenode和datanode,没有问题。 当我键入时,我得到错误: 当我键入hadoop dfs-ls时 我得到错误: 当我键入时,我得到错误: 这是不管我是否把或者“/”或者我所在的任何目录。 这一切意味着什么?如何获得正常的预期输出?我错过了什么?