我正在尝试将文件上传到我在 HDFS 上创建的目录,但我无法这样做,因为 ubuntu 无法在我的计算机上找到这些文件。目录“states”(我尝试上传的目录)包含 50 个 txt 文件,位于我的下载文件夹中(路径:/home/shradha/Downloads)。我正尝试将这些文件上传到 hdfs/states 中的 ec2 hadoop 实例中(我已经创建了 hdfs 和 states)。我读到过只有文件tmp
夹中的文件可以移动,所以我将要上传到的目录移动到hdfs
文件tmp
夹中,但仍然没有成功,我相信这与hduser
.
以下是我尝试过的命令:
hduser@ip-172-31-18-210:~/hadoop-2.7.2$ bin/hadoop fs -put /shradha/Downloads/states /hdfs/states
put: `/shradha/Downloads/states': No such file or directory
hduser@ip-172-31-18-210:~/hadoop-2.7.2$ bin/hadoop fs -copyFromLocal /usr/local/tmp/states /hdfs/states
copyFromLocal: `/usr/local/tmp/states': No such file or directory
答案1
您说您的本地文件位于(路径:/home/shradha/Downloads)但您正尝试上传/shradha/Downloads。
检查本地目录是否存在:
ls -al /home/shradha/Downloads/states
如果你可以列出文件,那么就可以了:
bin/hadoop fs -put /home/shradha/Downloads/states /hdfs/states