Я пытаюсь запустить произвольный модуль Ansible с определенным umask
(0002).
Некоторые модули Ansible (например, git
) поддерживать umask
параметр (или mode
параметр для установки разрешений напрямую), но многие этого не делают.
Насколько мне известно, Ansible не вызывает оболочку (если вы не используете shell
module), поэтому менять маску в моем профиле оболочки бесполезно.
Мой подход состоял в том, чтобы изменить UMASK
линия в /etc/login.defs
, но для Ansible это не имело значения. В umask
остается на 0022.
Кажется, что PAM настроен на включение pam_umask.so
.
Я знаю, что могу использовать shell
модуль как обходной путь (shell: umask 0002; some_command
), но это кажется уродливым взломом.
Как мне заставить Ansible уважать мои umask
?
Это Ansible 2.9.9, ориентированный на систему CentOS 8.