你如何创建一个目录www在/srv上基于debian的系统使用Ansible剧本?
当前回答
- file:
path: /etc/some_directory
state: directory
mode: 0755
owner: someone
group: somegroup
这也是设置权限,所有者和组的方法。最后三个参数不是必须的。
其他回答
这里有一个更简单的方法。
—name:创建dir mkdir -p dir dir/a dir/b
- file:
path: /etc/some_directory
state: directory
mode: 0755
owner: someone
group: somegroup
这也是设置权限,所有者和组的方法。最后三个参数不是必须的。
另外,在很多情况下,您需要创建多个目录,因此使用循环而不是为每个目录创建单独的任务是一个好主意。
- name: creates multiple directories in one task
file:
path: "{{ item }}"
state: directory
loop:
- /srv/www
- /dir/foo
- /dir/bar
---
- hosts: all
connection: local
tasks:
- name: Creates directory
file: path=/src/www state=directory
上面的playbook将在/src路径下创建www目录。
在运行上面的剧本之前。请确保您的ansible主机连接应该设置,
“本地主机ansible_connection=本地”
应该出现在/etc/ansible/hosts中
如需更多信息,请与我联系。
只需要为特定的分配设置执行任务的条件
- name: Creates directory
file: path=/src/www state=directory
when: ansible_distribution == 'Debian'