ansible 的file 模块

创建、修改、删除文件或者目录: file模块

file模块常用的几个参数:state、path、src、dest、mode、owner、group、name、recurse

state后面跟的参数: 

  touch  :创建文件

  directory:创建目录

  absent:删除文件或者目录或者链接文件

  link:创建链接文件

recurse:当文件为目录时,是否进行递归设置权限

" path + file " = " dest + file " = " name + file "

1、对普通文件的操作
命令

# ansible all -m file -a “path=/data/zy state=touch mode=0755 owner=redis group=redis”

all指hosts文件中的所有ip地址,也可以使用 “ -i IP/指定的hosts路径”
-m file:指定file模块,-m + ansibel支持的模块

脚本:

---
  - name: create file
    file:
    path: /data/zy
    state: touch
    mode: 0755
    owner: redis
    group: redis

path:创建文件的绝对路径名字
state:状态(touch指创建文件,absent指删除文件或者目录,directory 指创建目录)
mode:文件属性(默认创建的文件的属性是644,默认创建的目录的属性是755)
owner:所有者
group:所属组

如果只修改已存在的文件的属性,不需要添加 state
如果删除文件或者目录,将state改为absent

2、对连接文件的操作:
创建链接文件 state=link,删除链接文件state=absent,只会删除链接文件,不会删除源文件,其他的修改同普通文件一样。

# ansible all -m file -a “src=/data/zy dest=/data/link state=link
原文地址:https://www.cnblogs.com/carriezhangyan/p/10943559.html