将文件从本地文件系统上载到HDFS

时间:2018-01-31 15:46:21

标签: hadoop hdfs virtualbox hortonworks-data-platform

我正在关注Hortonworks Hadoop教程:https://hortonworks.com/tutorial/manage-files-on-hdfs-via-cli-ambari-files-view/section/1/#create-a-directory-in-hdfs-upload-a-file-and-list-contents。 我能够在HDFS中创建一个目录,但在将文件从本地系统上传到目录时遇到问题。

我使用命令hdfs dfs -chmod 777 /user授予root访问权限以读取和写入用户目录。然后我使用以下命令hdfs dfs -chown root:hdfs /user/hadoop授予root权限。

但出于某些原因,当我尝试执行命令hdfs dfs -put sf-salaries-2011-2013.csv /user/hadoop/sf-salaries-2011-2013/sf-salaries-2011-2013.csv时 - 我收到错误:

put: `/user/hadoop/sf-salaries-2011-2013/sf-salaries-2011-2013.csv': No such file or directory: `hdfs://sandbox-hdp.hortonworks.com:8020     /user/hadoop/sf-salaries-2011-2013/sf-salaries-2011-2013.csv'

端口8020可能出现问题吗?我一步一步地按照教程进行操作,无法弄清楚我在这里可能缺少什么。

这是我的终端视图: enter image description here

我也可以看到在Ambari中创建的目录(创建它两次): enter image description here

第一个可能有拼写错误(大写字母H)。但是当我看到目录是空的但它存在时。 enter image description here

enter image description here

1 个答案:

答案 0 :(得分:0)

您正尝试放入HDFS中不存在的HDFS目录。它没有权限。

hdfs dfs -ls /user/hadoop/sf-salaries-2011-2013

上面的目录不在HDFS中,你试图放入sf-salaries-2011-2013目录,但HDFS中的目录就像sf-salaries-2011-1013。看看下图中的亮点,你可以在这里找出你做错了什么。

enter image description here