3
sudo -u hdfs hadoop fs -copyFromLocal input.csv input.csv
copyFromLocal: `input.csv': No such file or directory

谁能告诉我出现这种错误的确切原因?我授予了该input.csv文件的所有权限,甚至将所有者更改为 hdfs。我是 Hadoop 和 Hbase 的新手。

4

4 回答 4

4

在这种情况下,您尝试以 hdfs 用户身份读取文件,该用户可能没有查看该文件的权限。要进行测试,请执行以下操作:

sudo -u hdfs cat input.csv

如果您获得权限被拒绝,您需要更改此文件的权限以便 hdfs 用户可以读取它(或者如果它已经具有读取权限,请将文件移动到 hdfs 用户可以读取的目录),或者使用不同的有权访问本地和远程目录/文件的用户。

于 2013-09-16T18:27:22.527 回答
1

您需要确保用户对该路径hdfs的所有父目录具有读取权限。input.csv

于 2015-02-10T05:08:04.037 回答
0

语法:hadoop dfs -copyFromLocal completelocalfilesystempath hdfspath

示例:让 input.csv 在 localpath /usr/examples 中,我需要复制它的 hdfs 路径是 /usr/input 所以命令将是

hadoop dfs -copyFromLocal /usr/examples/input.csv /usr/input/

于 2012-12-10T12:44:05.537 回答
0

要复制文件,您可以像这样运行它:

cat input.csv | sudo -u hdfs hadoop fs -put - input.csv
于 2017-03-15T08:36:51.277 回答