我想在Hadoop FS中复制本地文件。我运行这个命令:
sara@ubuntu:/usr/lib/hadoop/hadoop-2.3.0/bin$ hadoop fs -copyFromLocal /home/sara/Downloads/CA-GrQc.txt /usr/lib/hadoop/hadoop-2.3.0/${HADOOP_HOME}/hdfs/namenode
和
sara@ubuntu:/usr/lib/hadoop/hadoop-2.3.0/bin$ hdfs dfs -copyFromLocal /home/sara/Downloads/CA-GrQc.txt /usr/lib/hadoop/hadoop-2.3.0/${HADOOP_HOME}/hdfs/namenode
即使我跑:hdfs dfs -ls
我收到此错误:
> WARN util.NativeCodeLoader: Unable to load native-hadoop library for
> your platform... using builtin-java classes where applicable
> copyFromLocal: `.': No such file or directory
我不知道为什么会收到此错误?有什么好主意吗?
答案 0 :(得分:1)
根据您的输入,您的Hadoop安装似乎工作正常。有什么问题,hadoop fs -copyFromLocal
期望目录HDFS目录为目标目录,而不是Hadoop存储其块的本地目录。
所以在你的情况下,命令应该看起来像(例如):
sara@ubuntu:/usr/lib/hadoop/hadoop-2.3.0/bin$ hdfs dfs -copyFromLocal /home/sara/Downloads/CA-GrQc.txt /sampleDir/
sampleDir
是使用hadoop fs -mkdir
命令创建的目录。