【问题标题】:Sqoop Permission Issue when running inside Map Reduce Code在 Map Reduce 代码中运行时的 Sqoop 权限问题
【发布时间】:2017-12-01 09:40:23
【问题描述】:

我正在尝试使用

通过 map reduce 程序调用 Sqoop
Sqoop.runTool(arguments,_conf);

执行时,我收到以下错误

Exception in thread "main" java.lang.RuntimeException: Could not create temporary directory: /tmp/sqoop-hdfs/compile/a609226c19d65f561dd7035c00d318f6; check for a directory permissions issue on /tmp.

我已将 /tmp 及其在 HDFS 中的子目录的权限设置为 777

我可以使用sudo -u hdfs sqoop ...通过命令行很好地调用相同的命令

这是 Cloudera 的 hadoop 分发,我正在以 hdfs 用户身份运行该作业。

【问题讨论】:

  • 我投票决定将此问题作为离题结束,因为它 (1) 是由无法再复制的问题引起的,(2) 上次活跃的提问者没有回应2013 年,(3) 没有接受或有用的答案,(4) 2 天前吸引了非答案。

标签: hadoop hdfs cloudera sqoop


【解决方案1】:

这可能不是 HDFS 中的 /tmp 目录,而是本地文件系统上的 /tmp 目录 - 该目录的权限是什么(并且还可以解释为什么当你 'sudo' 命令时它会起作用)

【讨论】:

  • 感谢 Chris,我将 /tmp 目录的权限更改为 777,但仍然出现错误。我确定它所指的位置在 HDFS 上。
  • 您可以将完整的堆栈跟踪发布到您的原始问题中吗?
【解决方案2】:

只需清理 /tmp/sqoop-hdfs/compile FLOD 就可以了

【讨论】:

  • 问题是关于权限的。您是否遇到(并解决了)同样的错误?
猜你喜欢
  • 2012-04-05
  • 2012-04-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多