如何使用Ansible chmod + xa文件?

Atl*_*ic0 38 bash ansible ansible-playbook

使用ansible的chmod + xa文件的最佳方法是什么?

将以下脚本转换为ansible格式.

mv /tmp/metadata.sh /usr/local/bin/meta.sh
chmod +x /usr/local/bin/meta.sh
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止..

- name: move /tmp/metadata.sh to /usr/local/bin/metadata.sh
  command: mv /tmp/metadata.sh /usr/local/bin/metadata.sh
Run Code Online (Sandbox Code Playgroud)

hee*_*ayl 57

ansible模块中的mode参数file完全用于此目的.

为每个人添加执行权限(即chmod a+x在命令行上):

- name: Changing perm of "/foo/bar.sh", adding "+x"
  file: dest=/foo/bar.sh mode=a+x
Run Code Online (Sandbox Code Playgroud)

从版本1.8开始支持符号模式,在先前版本中需要使用八进制位.

  • 2年后,这个答案帮助我解决了Ansible问题.感谢大家. (4认同)

Ada*_*dam 18

mode使用复制模块时需要指定该参数。

例子:

- name: copy file and set permissions
  copy:
    src: script.sh
    dest: /directory/script.sh
    mode: a+x
Run Code Online (Sandbox Code Playgroud)


Tar*_*han 6

您可以更改文件的权限,而无需复制模块。

- name: Change permission on myScript.sh file
  file:
    path: /path/to/directory/myScript.sh
    state: file
    owner: root
    group: root
    mode: 0755
Run Code Online (Sandbox Code Playgroud)