如何在我的系统上找到Hadoop目录?我需要这个来执行命令-
hadoop dfs -copyFromLocal <local-dir> <hdfs-dir>
在这个命令中,我不知道我的hdfs。
不确定它是否有用,但是我按照命令运行并得到了这个输出-
hdfs dfs -ls
-rw-r--r-- 3 popeye hdfs 127162942 2016-04-01 19:47 .
在hdfs-site.xml中,我发现以下条目-
<property>
<name>dfs.datanode.data.dir</name>
<value>/hadoop/hdfs/data</value>
<final>true</final>
</property>
我试着按照命令运行,但这会产生错误-
[root@sandbox try]# hdfs dfs -copyFromLocal 1987.csv /hadoop/hdfs/data
copyFromLocal: `/hadoop/hdfs/data': No such file or directory
FYI -我正在做这一切在霍顿工作沙箱上的蔚蓝服务器。
发布于 2017-07-17 00:26:14
如果你跑:
hdfs dfs -copyFromLocal foo.txt bar.txt
然后,本地文件foo.txt将被复制到您自己的hdfs目录/user/popeye/bar.txt
(其中popeye
是您的用户名)。因此,以下方面也取得了同样的成果:
hdfs dfs -copyFromLocal foo.txt /user/popeye/bar.txt
在将任何文件复制到hdfs之前,一定要先创建父目录。您不必将文件放在这个"home“目录中,但是(1)最好不要将"/”与所有类型的文件混淆,(2)遵循此约定将有助于防止与其他用户发生冲突。
发布于 2017-12-01 02:28:08
根据第一个答案,我正在为Hadoop 1.x
详细阐述-
假设您在伪分发模型上运行此脚本,您可能会得到一个或两个用户列表(NameNodes),如图所示-
在我们的完全分发模型中,首先您有执行这些事情的管理员权限,并且将有N个NameNodes列表(用户)。
所以现在我们来谈谈我们的观点-
首先到达Hadoop主目录,然后运行这个脚本-
bin/hadoop fs -ls /
结果会是这样的-
drwxr-xr-x - xuiob78126arif supergroup 0 2017-11-30 11:20 /user
在这里,xuiob78126arif
是我的名字节点(主/用户),NameNode(用户)目录是-
/user/xuiob78126arif/
现在你可以去你的浏览器搜索地址-
http://xuiob78126arif:50070
从那里你可以得到Cluster Summary, NameNode Storage
,等等。
注意:脚本将只在一种条件下提供结果,如果DataNode中至少存在任何文件或目录,否则您将得到-
ls: Cannot access .: No such file or directory.
因此,在这种情况下,您首先通过bin/hadoop fs -put <source file full path>
放置任何文件
在运行bin/hadoop fs -ls /
脚本之后。
现在我希望,你对你的问题有一点了解,谢谢。
发布于 2020-10-02 04:25:34
要定位HDFS目录并确保您深入到安装hadoop的目录中。如果bin/hadoop fs -ls /
没有显示o/p,则表示"/“是hdfs目录。使用mkdir
为map创建一个新的dir,例如:hdfs fs -mkdir /user/<local_username>
。在此之后,put或copyfromLocal
命令将起作用。
这是我很难学到的。我希望像我这样的人会觉得这很有帮助
https://stackoverflow.com/questions/36378568
复制相似问题