2015-01-02 225 views
1

我已经在单机上安装了Hadoop 2.6使用This教程。 我使用的是Ubuntu 12.04机器和Java版本1.6.0_27。Hadoop hdfs显示ls:`/ home/hduser/input /':没有这样的文件或目录错误

我为Hadoop操作创建了单独的用户hduser。 我已经设置了HADOOP_HOME环境变量的值/usr/local/hadoop我已经提取了Hadoop发行版。

现在我正在关注example。但是,当我执行命令$HADOOP_HOME/bin/hdfs dfs -ls /home/hduser/input/它给了以下错误 -

15/01/02 18:32:38 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable ls: `/home/hduser/input/': No such file or directory

我也有试过命令 - $HADOOP_HOME/bin/hdfs dfs -mkdir /home/hduser/input/,但仍然得到同样的错误。

当我运行命令jps它显示 - 16023 SecondaryNameNode 16200 ResourceManager 16432 NodeManager 18971 Jps 15503 NameNode

它不表示的JobTracker的TaskTracker任何过程。

任何人可以帮我解决的LS问题:`/家庭/ hduser /输入/':没有这样的文件或目录和启动/列出的JobTracker的TaskTracker过程。

在此先感谢。

回答

2

您正试图使用​​hdfs访问本地目录。请尝试以下步骤:

export PATH=$HADOOP_HOME/bin:$PATH ##Make this entry in your ~/.bashrc file 
hdfs dfs -mkdir /user 
hdfs dfs -mkdir /user/hduser 
hdfs dfs -mkdir /user/hduser/input 
hdfs dfs -ls /user/hduser/input 
echo "Hello World" > file01 
hadoop fs -copyFromLocal /user/hduser/input 
hadoop fs -cat /user/hduser/input/file01 
+0

感谢您的宝贵回复。我已经按照上面的步骤成功执行了。但是,当我给命令** hdfs dfs -cat/user/hduser/input/file01 **时,它显示错误** cat:'/ user/hduser/input/file01':没有这样的文件或目录** – Deepu

+0

您需要首先创建文件或从本地文件系统复制到hdfs然后再读取它。我编辑了答案以照顾相同。 – SMA

+0

Ohk。得到它了。我遵循你的步骤。我认为你在-copyFromLocal命令中错过了源文件名“file01”。你的步骤正在工作。但是我得到** DataStreamer异常 org.apache.hadoop.ipc.RemoteException(java.io.IOException):文件/user/hduser/input/file01._COPYING_只能复制到0节点而不是minReplication(= 1) 。有0个数据节点正在运行,并且在此操作中不包含任何节点**错误。 感谢您的回复 – Deepu

相关问题