ansible 的file 模块

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

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

state后面跟的参数: 

  touch  :创建文件

  directory:创建目录

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

  link:创建链接文件

" 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

时间: 2024-10-19 19:58:23

ansible 的file 模块的相关文章

Ansible(12) file模块

file模块 在之前ansible命令行的时候有copy模块,在playbook的时代自然也有一个模块专门负责文件的拷贝,当然这个时代它不仅仅是文件拷贝那么简单. 来自官方的解释: file模块它包含了文件.文件夹.超级链接类的创立.拷贝.移动.删除操作. 常用参数 参数名 是否必须 默认值 选项 说明 follow no no yes/no 如果原来的文件是link,拷贝后依旧是link force no no yes/no 强制执行,没说的 group no 设定一个群组拥有拷贝到远程节点的

ansible之file模块

file用法选项 [[email protected] ~]# ansible-doc -s file less 436 Copyright (C) 1984-2009 Mark Nudelman less comes with NO WARRANTY, to the extent permitted by law. For information about the terms of redistribution, see the file named README in the less d

ansible 之file模块

调用-s 参数,需要客户端能够无密码使用sudo 命令:例:更改所有节点上/tmp/test.sh 的权限为755,属主和属组为root [[email protected] ~]# ansible slave -m file -a "dest=/tmp/test.sh mode=755 owner=root group=root" –s [[email protected] ~]# ansible slave -m file -a "dest=/tmp/test.sh mo

运维自动化神器ansible之user模块

运维自动化神器ansible之user模块 一.概述 ?user模块 可管理远程主机上的 用户,比如创建用户.修改用户.删除用户.为用户创建密钥对等操作. 二.参数介绍 ? name: 用于指定操作的 user,必须项. uid: 用于指定 user 的 UID,默认为空. _non_unique:_ 与uid参数一起使用,允许改变UID为非唯一值. group: 参数用于指定用户 主组.默认值为空,为空时创建的用户组名跟用户名一致. groups: 参数用于指定用户属组,可以在创建用户时指定用

ansible执行shell模块和command模块报错| FAILED | rc=127 >> /bin/sh: lsof: command not found和| rc=2 >> [Errno 2] No such file or directory

命令: ansible -i hosts_20 st  -m shell -a 'service zabbix_agentd star'  -K --become ansible -i hosts_20 st  -m shell -a 'lsof -i:10050'  -K --become 在shell模块报错:| FAILED | rc=127 >>/bin/sh: lsof: command not found 在command模块报错:| rc=2 >>[Errno 2]

ansible之copy模块

有时需要把某个文件批量拷贝到其他主机上,那么ansible已经提供相应的模块了.那就是copy.. copy用法 [[email protected] ~]# ansible-doc -s copy less 436 Copyright (C) 1984-2009 Mark Nudelman less comes with NO WARRANTY, to the extent permitted by law. For information about the terms of redistr

自动化运维之Ansible安装与模块应用

自动化运维之Ansible Ansible概述 由于互联网快速展导致产品更新换代速度逐渐加快,运维人员每天都要进行大量维护操作,人就按照传统方式进行维护会使工作效率低下,只是,部署自动化运维就尽可能安全,高校的完成工作 一般会把自动化运维工具划分为两类 (一)需要使用代理工具的,也就是基于专用的Agent程序完成管理功能,如:Puppet.Func.Zabbix等(二)不需要配置代理工具,可以直接基于SSH服务来管理完成,如:Ansible,Fabric等 下面介绍几款空能和类似的自动化运维工具

自动化运维之Ansible应用基础模块(超详细)

Ansible是一种基于模块进行工作的框架结构.批量部署能力就是由Ansible所运行的模块实现的.简而言之Ansible是基于"模块"完成各种"任务"的. Ansible常用的核心模块 模块的基本语法如下 ansible [主机] [-m 模块] [-a args] //命令格式 # ansible-doc -l //列出所有已安装的模块 注:按q退出 # ansible-doc -s yum //-s列出yum模块描述信息和操作动作 1.command 模块 c

超详细Ansible安装及模块详解

简介:ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fabric)的优点,实现了批量系统配置.批量程序部署.批量运行命令等功能. ansible是基于模块工作的,本身没有批量部署的能力.真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架.主要包括: (1).连接插件connection plugins:负责和被监控端实现通信; (2).host inventory:指定操作的主机,