SaltStack:如何解决“file.recurse 不保留权限”?

SaltStack:如何解决“file.recurse 不保留权限”?

如何解决递归目录管理不保留权限

我想将(本地)中的所有文件复制/monitoring/files/etc/etcminion 上。

copy_files_in_etc:
  file.recurse:
    - source:
      - salt://monitoring/files/etc
    - name: /etc
    - template: jinja

上述代码片段有效,但我缺少某些文件的可执行位。

例如 /etc/cron.daily 中的脚本应该是可执行的。

解决这个问题最简单的方法是什么?

我寻找一种方法来使所有与该表达式匹配的文件都可以执行:

/etc/cron.(daily|hourly|monthly|weekly/)

答案1

看起来这个问题已经解决了。

copy_files_in_etc:
  file.recurse:
    - source:
    - salt://monitoring/files/etc
    - name: /etc
    - template: jinja
    - file_mode: keep

file_mode在以下链接 处搜索:https://docs.saltstack.com/en/latest/ref/states/all/salt.states.file.html#salt.states.file.recurse

这将导致文件具有与 salt master 相同的模式。

答案2

您可以使用file_modedir_mode。就您而言,file_mode应该足够了。

copy_files_in_etc:
  file.recurse:
    - source:
      - salt://monitoring/files/etc
    - name: /etc
    - template: jinja
    - file_mode: '0755'

相关内容