首先,我读过这个post:is there 与hdfs?中的“pwd”等价?。它说hdfs中没有这种“pwd”。
但是,当我继续使用hadoop的说明:设置单节点群集时,我在以下命令上失败了:
$ bin/hdfs dfs -put etc/hadoop input
put: 'input': No such file or directory
奇怪的是,我第一次通过指令就成功了,但第二次失败了。同样奇怪的是,我在我朋友的计算机上成功地使用了这个命令,它的系统(ubuntu14.04)和hadoop版本(2.7.1)与我的相同。
有人能解释一下这里发生了什么吗?hdfs中到底有没有“pwd”?
2条答案
按热度按时间yqlxgs2m1#
首先,您正在尝试运行命令
$ bin/hdfs dfs -put etc/hadoop input
使用vm/hdfs中不存在的用户让我用hdp-vm中的以下示例来清楚地解释您
在这里,我使用root user执行了这个命令,但它在hdp vm中不存在。签入以下命令以列出用户
在
HDFS
,如果你想的话copy
一个文件并且没有提到目标参数的绝对路径,它将考虑home
并将您的文件放在那里。在这里root
找不到用户。现在让我们切换到
hive
用户和测试耶..复制成功。。
希望对你有帮助。。!!!
hfwmuf9z2#
这意味着我们需要将输入文件移动到hdfs位置。
假设您有一个名为input.txt的输入文件,我们需要移动到hdfs,然后按照下面的命令操作。命令:hdfs dfs-put/input\u location/hdfs\u location
如果hdfs中没有特定的目录hdfs-put/home/desktop/input.txt/
在hdfs中的case-specific目录(注意:我们需要在继续之前创建一个目录)
hdfs dfs-put/home/desktop/input.txt/mr\u输入
之后,您可以运行示例
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar字数/input/output
这里输入和输出是hdfs中应该包含的路径。
希望这有帮助。