我使用Cloudera CDH存储库在CentOS上构建了单节点Hadoop环境。当我想将本地文件复制到HDFS时,我使用了命令:
sudo -u hdfs hadoop fs -put /root/MyHadoop/file1.txt /
但是,结果让我沮丧:
put: '/root/MyHadoop/file1.txt': No such file or directory
我确信这个文件确实存在。
请帮助我,谢谢!
As user hdfs
,您是否有访问权限/root/
(在您的本地硬盘中)?通常你不会。
您必须复制file1.txt
到当地的一个地方hdfs
用户在尝试将其复制到 HDFS 之前拥有读取权限。
Try:
cp /root/MyHadoop/file1.txt /tmp
chown hdfs:hdfs /tmp/file1.txt
# older versions of Hadoop
sudo -u hdfs hadoop fs -put /tmp/file1.txt /
# newer versions of Hadoop
sudo -u hdfs hdfs dfs -put /tmp/file1.txt /
- - 编辑:
看一眼下面是更清洁的罗马-尼基琴科的答案 https://stackoverflow.com/a/20002128/582789.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)