如何将数据目录从hdfs复制到本地fs?

时间:2019-03-20 11:53:06

标签: hadoop get hdfs

我首先需要使用以下命令备份整个hadoop datanode数据目录:

hdfs dfs -copyToLocal /var/hadoop/dfs/name/data /home/ubuntu/hadoopfiles

我得到一个错误:

  

/ var / hadoop / dfs / name / data的“没有这样的文件opr目录”

经过一些搜索,我发现了这个带有示例的堆栈溢出主题: https://stackoverflow.com/questions/28213116/hadoop-copy-a-local-file-system-folder-to-hdfs#=

但是即使我这样做:

hdfs dfs -ls

  

我收到错误消息ls:`。':没有这样的文件或目录

我也看过其他帖子,这似乎是一个很常见的问题,但是我找不到适合我的解决方案。

谢谢。

1 个答案:

答案 0 :(得分:0)

首先,使用

hadoop fs -get /theFolder

要将其复制到当前所在目录中,请按以下步骤操作。

然后您可以使用scp或我的rsync偏好在文件箱和本地系统之间复制文件,就像这样。这是在使用-get后仍然在同一目录中的情况下使用rsync的方法:

rsync -av ./theFolder username@yourlocalmachine:/home/username

这将从文件夹中的本地fs复制文件夹到计算机fs的主文件夹中。在这两种情况下,请务必用您的实际用户名替换“用户名”,并用您的计算机的主机名或IP地址替换您的本地计算机。

请参考此答案

  

Copy from Hadoop to local machine

或查看此链接scp method