重写oozie中的fs.permissions.umask-mode

zed5wv10  于 2021-06-04  发布在  Hadoop
关注(0)|答案(1)|浏览(351)

我正在运行一个JavaOozie操作 prepare 删除和创建文件夹的命令。创建的文件夹的umask为 022 (集群默认),但我希望它 002 .
在工作流的 job.properties 我有 fs.permissions.umask-mode=002 . 如果在作业运行时查看传递到操作中的配置,则不会使用此值,默认umask为 022 已使用。 fs.permissions.umask-mode=002 不锁定在ambari中,因此可以更改,以及 job.properties 是正确的。我也尝试过把乌玛斯克的财产放在其他地方,比如在一个地方,但没有成功 global 在包含动作的子工作流和动作本身中进行标记。
http://grokbase.com/t/cloudera/cdh-user/134pysstcq/cdh4-2-oozie-ignores-fs-permissions-umask-mode 似乎是其他人有同样的问题,但线程死了。

33qvvth1

33qvvth11#

您可以尝试将以下属性添加到中的操作 workflow.xml :

<configuration>
  <property>
    <name>fs.permissions.umask-mode</name>
    <value>002</value>
  </property>
</configuration>

我在我的一个项目中使用过它,而且很有效。您也可以尝试使用旧属性 dfs.umask 而不是 fs.permissions.umask-mode :

<configuration>
  <property>
    <name>dfs.umask</name>
    <value>2</value>
  </property>
</configuration>

或者尝试添加前缀 oozie.launcher. 由于shell操作是作为oozie“launcher”Map任务执行的,并且此类任务不使用常规配置属性:

<configuration>
  <property>
    <name>oozie.launcher.fs.permissions.umask-mode</name>
    <value>002</value>
  </property>
</configuration>

相关问题