hadoop put命令中的目标已存在错误

时间:2012-02-21 14:54:18

标签: hadoop hdfs put

我正在尝试使用Hadoop 1.0。我将一个文件从本地系统复制到HDFS时得到Target does not exists

我的hadoop命令及其输出如下:

shekhar@ubuntu:/host/Shekhar/Softwares/hadoop-1.0.0/bin$ hadoop dfs -put /host/Users/Shekhar/Desktop/Downloads/201112/20111201.txt .
Warning: $HADOOP_HOME is deprecated.

put: Target  already exists

在观察输出后,我们可以看到单词'Target'和'already'之间有两个空格。我认为这两个词之间必须有/user/${user}之类的东西。如果我明确地将目标路径指定为/user/shekhar,那么我会收到以下错误:

shekhar@ubuntu:/host/Shekhar/Softwares/hadoop-1.0.0/bin$ hadoop dfs -put /host/Users/Shekhar/Desktop/Downloads/201112/20111201.txt /user/shekhar/data.txt
Warning: $HADOOP_HOME is deprecated.

put: java.io.FileNotFoundException: Parent path is not a directory: /user/shekhar

ls命令的输出如下:

shekhar@ubuntu:/host/Shekhar/Softwares/hadoop-1.0.0/bin$ hadoop dfs -lsr /
Warning: $HADOOP_HOME is deprecated.

drwxr-xr-x   - shekhar supergroup          0 2012-02-21 19:56 /tmp
drwxr-xr-x   - shekhar supergroup          0 2012-02-21 19:56 /tmp/hadoop-shekhar
drwxr-xr-x   - shekhar supergroup          0 2012-02-21 19:56 /tmp/hadoop-shekhar/mapred
drwx------   - shekhar supergroup          0 2012-02-21 19:56 /tmp/hadoop-shekhar/mapred/system
-rw-------   1 shekhar supergroup          4 2012-02-21 19:56 /tmp/hadoop-shekhar/mapred/system/jobtracker.info
drwxr-xr-x   - shekhar supergroup          0 2012-02-21 19:56 /user
-rw-r--r--   1 shekhar supergroup    6541526 2012-02-21 19:56 /user/shekhar

请帮我复制文件到HDFS。如果您需要任何其他信息,请告诉我。

我在Ubuntu中尝试使用WUBI(Windows Installer for ubuntu)安装。

提前致谢!

3 个答案:

答案 0 :(得分:3)

put命令中的问题是尾随.。您需要在HDFS上指定 的完整路径,例如:

hadoop fs -put /host/Users/Shekhar/Desktop/Downloads/201112/20111201.txt /whatever/20111201.txt

如果您放入该文件的目录尚不存在,则需要先创建该目录:

hadoop fs -mkdir /whatever

当您明确指定路径时,您遇到的问题是系统上的问题,/ user / shekar是文件,而不是目录。您可以看到它,因为它的大小为非0。

答案 1 :(得分:1)

-rw-r - r-- 1 shekhar supergroup 6541526 2012-02-21 19:56 / user / shekhar

shekhar @ ubuntu:/host/Shekhar/Softwares/hadoop-1.0.0/bin$ hadoop dfs -put /host/Users/Shekhar/Desktop/Downloads/201112/20111201.txt / user / shekhar / data.txt中

答案 2 :(得分:0)

您必须先制作文件!

hdfs dfs -mkdir /user/hadoop hdfs dfs -put /home/bigdata/.password /user/hadoop/