Hadoop';把';命令:没有这样的文件或目录

Hadoop';把';命令:没有这样的文件或目录,hadoop,Hadoop,我曾尝试向HDFS文件系统添加一个文本文件,但Hadoop拒绝了,错误消息是“没有这样的文件或目录” 但是SampleText.txt和hdata目录的路径是正确的。有什么问题 这是我的hdfs-site.xml文件: <configuration> <property> <name>dfs.replication</name> <value>1</value> </property>

我曾尝试向HDFS文件系统添加一个文本文件,但Hadoop拒绝了,错误消息是“没有这样的文件或目录”

但是
SampleText.txt
hdata
目录的路径是正确的。有什么问题

这是我的hdfs-site.xml文件:

<configuration>
  <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
  <property>
    <name>dfs.namenode.name.dir</name>
    <value>/home/NDelt/HadoopDir/hdata/dfs/namenode</value>
  </property>
  <property>
    <name>dfs.datanode.data.dir</name>
    <value>/home/NDelt/HadoopDir/hdata/dfs/datanode</value>
  </property>
</configuration>

dfs.replication
1.
dfs.namenode.name.dir
/home/NDelt/HadoopDir/hdata/dfs/namenode
dfs.datanode.data.dir
/home/NDelt/HadoopDir/hdata/dfs/datanode

在HDFS上,没有
/home
目录

您在HDFS中的用户帐户将位于
/user

您需要使用
HDFS mkdir-p


也不需要将本地文件系统完全匹配到HDFS中,正如cricket_007所提到的,HDFS中没有/home目录

如何测试
hdfs put

$bin/hdfs dfs-put/home/NDelt/Datasets/SampleText.txt/tmp

并测试是否通过以下方式将文件添加到HDFS中:

$bin/hdfs dfs-get/tmp/SampleText.txt

如果文件内容较小,也可以查看内容

$bin/hdfs dfs-cat/tmp/SampleText.txt

要“测试文件是否存在”,您应该实际使用
test-e
,而不是下载(get/cat)文件内容
<configuration>
  <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
  <property>
    <name>dfs.namenode.name.dir</name>
    <value>/home/NDelt/HadoopDir/hdata/dfs/namenode</value>
  </property>
  <property>
    <name>dfs.datanode.data.dir</name>
    <value>/home/NDelt/HadoopDir/hdata/dfs/datanode</value>
  </property>
</configuration>