【问题标题】:No such file or directory error when using Hadoop fs --copyFromLocal command使用 Hadoop fs --copyFromLocal 命令时没有此类文件或目录错误
【发布时间】:2016-04-13 11:45:33
【问题描述】:

我有一个本地的VM,上面安装了Hortonworks Hadoop 和hdfs。我从我的机器ssh'ed 进入虚拟机,现在我正在尝试通过以下命令集将文件从本地文件系统复制到 hdfs:

[root@sandbox ~]# sudo -u hdfs hadoop fs -mkdir /folder1/
[root@sandbox ~]# sudo -u hdfs hadoop fs -copyFromLocal /root/folder1/file1.txt /hdfs_folder1/

当我执行它时,我得到以下错误 - copyFromLocal:/root/folder1/file1.txt': No such file or directory

我可以在/root/folder1/ 目录中看到该文件,但使用hdfs 命令会抛出上述错误。我也尝试将cd 转换为/root/folder1/,然后执行命令,但同样的错误出现了。为什么文件就在那儿却找不到?

【问题讨论】:

  • 权限?通常只允许 root 查看/root/ 目录中的内容。
  • @Roman 抱歉,我无法理解您的意思?我正在尝试将 fie 从我的本地文件系统复制到 hdfs。如果我不把 sudo -u hdfs 放在开头,那么我会收到权限被拒绝错误

标签: hadoop hdfs hortonworks-data-platform


【解决方案1】:

通过运行sudo -u hdfs hadoop fs...,它尝试将文件/root/folder1/file.txt 读取为hdfs。

你可以这样做。

  1. 运行chmod 755 -R /root。它将递归地更改目录和文件的权限。但不建议对根主目录开放权限。
  2. 然后您可以以sudo -u hdfs 运行copyFromLocal 将文件从本地文件系统复制到hdfs。

更好的做法是为root创建用户空间并直接以root身份复制文件。

  1. sudo -u hdfs hadoop fs -mkdir /user/root
  2. sudo -u hdfs hadoop fs -chown root:root /user/root
  3. hadoop fs -copyFromLocal

【讨论】:

  • 我这样做了,但它仍然显示为No such file or directory。我在执行chmod 755 -R /root/folder1后执行sudo -u hdfs hadoop fs -copyFromLocal /root/folder1/file1.txt /hdfs_folder1/
  • 这个文件的权限是-rwxrwxrwx 1 root root
  • 不仅仅是文件。您可以运行命令sudo -u hdfs ls -ltr /root/folder1 看看它是否可以列出文件
  • 我收到拒绝权限错误。那我该怎么办?正如你提到的,我将权限更改为 755,但仍然是同样的问题
  • 在这种情况下,您必须运行此命令chmod 755 /root,这是不可取的。您不应该打开根目录的权限。我已经修改了为 root 和复制文件创建用户空间的答案。
【解决方案2】:

我在运行 Hortonworks 4 节点集群时遇到了同样的问题。如前所述,用户“hdfs”没有根目录的权限。解决方案是将信息从根文件夹复制到“hdfs”用户可以访问的位置。在标准 Hortonworks 安装中,这是 /home/hdfs

以 root 身份运行以下命令...

mkdir /home/hdfs/folder1

cp /root/folder1/file1.txt /home/hdfs/folder1

现在将用户更改为 hdfs 并从 hdfs USER 的可访问目录运行

su hdfs

cd /home/hdfs/folder1

现在您可以作为 hdfs 用户访问文件

hdfs dfs -put file1.txt /hdfs_folder1

【讨论】:

    猜你喜欢
    • 2019-05-03
    • 1970-01-01
    • 1970-01-01
    • 2011-12-10
    • 1970-01-01
    • 2016-02-26
    • 1970-01-01
    • 2021-05-16
    • 1970-01-01
    相关资源
    最近更新 更多