你如何创建一个目录www在/srv上基于debian的系统使用Ansible剧本?


当前回答

可以直接执行该命令,使用ansible直接创建

ansible -v targethostname -m shell -a "mkdir /srv/www" -u targetuser

OR

ansible -v targethostname -m file -a "path=/srv/www state=directory" -u targetuser

其他回答

您需要文件模块。要创建目录,您需要指定选项状态:directory:

- name: Creates directory
  file:
    path: /src/www
    state: directory

你可以在https://docs.ansible.com/ansible/latest/collections/ansible/builtin/file_module.html上看到其他选项

可以直接执行该命令,使用ansible直接创建

ansible -v targethostname -m shell -a "mkdir /srv/www" -u targetuser

OR

ansible -v targethostname -m file -a "path=/srv/www state=directory" -u targetuser

这里有一个更简单的方法。

—name:创建dir mkdir -p dir dir/a dir/b

- file:
    path: /etc/some_directory
    state: directory
    mode: 0755
    owner: someone
    group: somegroup

这也是设置权限,所有者和组的方法。最后三个参数不是必须的。

只需要为特定的分配设置执行任务的条件

- name: Creates directory
  file: path=/src/www state=directory
  when: ansible_distribution == 'Debian'