Hadoop dfs -ls返回我的hadoop / dir中的文件列表

时间:2010-03-06 19:44:24

标签: hadoop hdfs

我在Win7下设置了一个通过cygwin运行的sigle-node Hadoop配置。在通过

bin/start-all.sh
启动Hadoop之后,我运行
bin/hadoop dfs -ls
,它返回了我的hadoop目录中的文件列表。然后我运行
bin/hadoop datanode -format
bin/hadoop namenode -format
但是-ls仍然返回我的hadoop目录的内容。据我所知,它应该什么都不返回(空文件夹)。我做错了什么?

4 个答案:

答案 0 :(得分:2)

您是否在conf文件夹下编辑了core-site.xml和mapred-site.xml? 看起来你的hadoop集群处于本地模式。

答案 1 :(得分:2)

我知道这个问题很老了,但Hadoop中的目录结构有所改变(版本2.5) Jeroen的当前版本将是。

hdfs dfs -ls hdfs:// localhost:9000 / users / smalldata

另外只是为了获取信息 - 不推荐使用start-all.sh和stop-all.sh,而应该使用start-dfs.sh和start-yarn.sh

答案 2 :(得分:1)

我遇到了同样的问题,并通过明确指定NameNode的URL来解决它。

要列出hdfs空间根目录中的所有目录,请执行以下操作:

./bin/hadoop dfs -ls hdfs://<ip-of-your-server>:9000/

文档说明配置中的默认hdfs点,但我找不到它。如果有人知道他们的意思,请启发我们。

这是我获取信息的地方:http://hadoop.apache.org/common/docs/r0.20.0/hdfs_shell.html#Overview

答案 3 :(得分:1)

或者你可以这样做:

  • 运行stop-all.sh。
  • 删除dfs数据和名称目录
  • Namenode -format
  • 运行start-all.sh