HDFS错误放置:`input':没有这样的文件或目录
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDFS错误放置:`input':没有这样的文件或目录相关的知识,希望对你有一定的参考价值。
我已经安装了hadoop 2.6.0,我正在玩它。我正在尝试伪分布式设置,我按照http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/SingleCluster.html#Execution上的说明操作我在第5步卡住了,即当我运行命令时
bin/hdfs dfs -put etc/hadoop input
我得到以下错误。
15/02/02 00:35:49 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
put: `input': No such file or directory
为什么我收到此错误?我该如何解决?
除了Ashrith编写的内容之外,还可以添加-p,以防目录尚未创建。
bin/hadoop fs -mkdir -p /path/to/hdfs/dir
希望这有助于其他人。
您收到错误,因为路径中没有指定此类目录。请查看my answer to a similar question,它解释了hadoop如何解释相对路径。
确保首先使用以下命令创建目录:
bin/hadoop fs -mkdir input
然后尝试重新执行命令-put
。
只需将“/”放在输入的前面,因为它是一个目录。
./bin/hdfs dfs -put etc/hadoop /input
希望这可以帮助
在上面的问题中有两部分:
- 它显示警告,因为U必须使用64位一个和32位编译的Hadoop Native Lib。它是一个警告,所以不会影响你的代码。
- 第二个是错误,主要是因为它无法将文件放在输入文件夹中。你需要使用hadoop mkdir命令在hadoop中创建文件夹:
hadoop fs -mkdir / hadoopinput
或[对于新版本]
hdfs dfs -mkdir / hadoopinput
现在你可以把文件放在文件夹中:
hdfs dfs -put / Users / {username} / Desktop / file01 / hadoopinput
要检查文件是否已复制到文件夹内,请使用以下命令:
hdfs dfs -ls / hadoopinput
已解决:1。在hdfs中创建目录hdfs dfs -mkdir / input_file_name 2.将数据复制到hdfs。 hadoop fs -put filename.txt / input_file_name / output_file_name
有两个错误,首先是您的平台的本机hadoop库。这是因为你没有为hadoop版本安装hadoop winutils。查看此答案以获取更多详细信息https://stackoverflow.com/a/46382570/6337190第二个错误是没有此类文件或目录。这是因为您必须正确指定路径。将目录更改为hadoop / bin /并编写命令
制作目录
hdfs dfs -mkdir / input
将文件放在目录中
hdfs dfs -put /path/to/file.txt / input
检查目录中的文件
hdfs dfs -ls / input
更改用户:owner,如果要直接从root写入任何文件到hdfs
sudo -u hdfs hdfs dfs -chown root:hdfs /user/file --{/file}
sudo -u hdfs hdfs dfs -chmod -R 775 /user/file
要么
sudo -u hdfs hdfs dfs -chown -R hdfs:hadoop /user/file
sudo -u hdfs hdfs dfs -chmod -R 1777 /user/file
然后使用put命令
sudo -u hdfs hdfs dfs -put /root/project/* /file --{/user/file}
适合我
[root@spark ~]# sudo -u hdfs hdfs dfs -put /root/project/* /file/
put: `file/': No such file or directory
[root@spark ~]# hdfs dfs -put /root/project/* /file
put: Permission denied: user=root, access=WRITE, inode="/file":hdfs:hadoop:drwxr-xr-t
[root@spark ~]# sudo -u hdfs hdfs dfs -chown root:hdfs /file
[root@spark ~]# hdfs dfs -put /root/project/*.csv /file
[root@spark ~]# hdfs dfs -ls /file
找到12项
rw-r--r-- 1 root hdfs 4662272 2019-04-28 06:23 /file/StokKs.csv
rw-r--r-- 1 root hdfs 302648 2019-04-28 06:23 /file/Stocks.csv
rw-r--r-- 1 root hdfs 284628 2019-04-28 06:23 /file/Stocks.csv
rw-r--r-- 1 root hdfs 568949 2019-04-28 06:23 /file/Satellite.csv
rw-r--r-- 1 root hdfs 579302 2019-04-28 06:23 /file/Stocks.csv
rw-r--r-- 1 root hdfs 24805721 2019-04-28 06:23 /file/medical.csv
rw-r--r-- 1 root hdfs 5650234 2019-04-28 06:23 /file/bank.csv
rw-r--r-- 1 root hdfs 2893092 2019-04-28 06:23 /file/facebook.csv
以上是关于HDFS错误放置:`input':没有这样的文件或目录的主要内容,如果未能解决你的问题,请参考以下文章
Hadoop hdfs 显示 ls: `/home/hduser/input/': No such file or directory 错误
hdfs:在 sparkR shell 中读取 parquetfile 时没有此类文件或目录错误
输入路径不存在:hdfs://localhost:9000/user/rab/input
php问题求助,Notice: Undefined offset: 1 ,我的数组下标没有越界啊?为啥会有这样的提示呢?