You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Cloudera虚拟机执行hadoop fs -copyFromLocal报错的原因及解决方法

Hadoop copyFromLocal 报错“'.' : No such file or directory”的原因与解决办法

问题根源

你执行的hadoop fs -copyFromLocal words.txt命令只指定了本地源文件,没有明确声明HDFS的目标路径。此时Hadoop会默认尝试把文件复制到当前HDFS用户的工作目录(也就是/user/你的虚拟机用户名,比如Cloudera QuickStart VM默认用户名是cloudera,对应路径就是/user/cloudera)。如果这个HDFS目录还没有被创建,Hadoop就会报错找不到当前目录(命令里的.代表HDFS的当前工作目录)——这和安全模式完全没关系,是目标路径不存在导致的。

解决步骤

方法1:先创建自己的HDFS用户目录(推荐)

首先执行命令创建你的HDFS用户根目录(以用户名cloudera为例,换成你实际的用户名):

hadoop fs -mkdir -p /user/cloudera

-p参数是确保父目录不存在时也能一起创建,避免报错。

然后再执行复制命令,此时Hadoop会默认把文件放到刚创建的用户目录下:

hadoop fs -copyFromLocal words.txt

或者你也可以明确指定目标路径,更清晰:

hadoop fs -copyFromLocal words.txt /user/cloudera/

方法2:直接指定一个已存在的HDFS目标路径

如果你不想创建用户目录,也可以直接把文件复制到HDFS的根目录(测试场景下可用,生产环境不推荐):

hadoop fs -copyFromLocal words.txt /

或者复制到其他已存在的HDFS目录,比如/tmp:

hadoop fs -copyFromLocal words.txt /tmp/

验证是否成功

复制完成后,用以下命令查看文件是否存在:

# 查看用户目录下的文件
hadoop fs -ls /user/cloudera
# 或者查看根目录
hadoop fs -ls /
# 查看tmp目录
hadoop fs -ls /tmp

内容的提问来源于stack exchange,提问作者HihaSpyKnocker

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:20:16