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 distribution.
Homepage: http://www.greenwoodsoftware.com/less
- name: Sets attributes of files
  action: file
      follow                 # This flag indicates that filesystem links, if they exist, should be followed.
      force                  # force the creation of the symlinks in two cases: the source file does not exist (but will appear
                               later); the destination exists and is a file (so, we need to
                               unlink the "path" file and create symlink to the "src" file in
                               place of it).
      group                  # name of the group that should own the file/directory, as would be fed to `chown‘
      mode                   # mode the file or directory should be. For those used to `/usr/bin/chmod‘ remember that modes are
                               actually octal numbers (like 0644). Leaving off the leading zero
                               will likely have unexpected results. As of version 1.8, the mode
                               may be specified as a symbolic mode (for example, `u+rwx‘ or
                               `u=rw,g=r,o=r‘).
      owner                  # name of the user that should own the file/directory, as would be fed to `chown‘
      path=                  # path to the file being managed.  Aliases: `dest‘, `name‘
      recurse                # recursively set the specified file attributes (applies only to state=directory)
      selevel                # level part of the SELinux file context. This is the MLS/MCS attribute, sometimes known as the
                               `range‘. `_default‘ feature works as for `seuser‘.
      serole                 # role part of SELinux file context, `_default‘ feature works as for `seuser‘.
      setype                 # type part of SELinux file context, `_default‘ feature works as for `seuser‘.
      seuser                 # user part of SELinux file context. Will default to system policy, if applicable. If set to
                               `_default‘, it will use the `user‘ portion of the policy if
                               available
      src                    # path of the file to link to (applies only to `state=link‘). Will accept absolute, relative and
                               nonexisting paths. Relative paths are not expanded.
      state                  # If `directory‘, all immediate subdirectories will be created if they do not exist, since 1.7 they
                               will be created with the supplied permissions. If `file‘, the file
                               will NOT be created if it does not exist, see the [copy] or
                               [template] module if you want that behavior.  If `link‘, the
                               symbolic link will be created or changed. Use `hard‘ for
                               hardlinks. If `absent‘, directories will be recursively deleted,
                               and files or symlinks will be unlinked. If `touch‘ (new in 1.4),
                               an empty file will be created if the `path‘ does not exist, while
                               an existing file or directory will receive updated file access and
                               modification times (similar to the way `touch` works from the
                               command line).

模块选项

force:需要在两种情况下强制创建软链接,一种是源文件不存在但之后会建立的情况下;另一种是目标软链接已存在,需要先取消之前的软链,然后创建新的软链,有两个选项:yes|no

group:定义文件/目录的属组

mode:定义文件/目录的权限

owner:定义文件/目录的属主

path:必选项,定义文件/目录的路径

recurse:递归的设置文件的属性,只对目录有效

src:要被链接的源文件的路径,只应用于state=link的情况

dest:被链接到的路径,只应用于state=link的情况

state:

directory:如果目录不存在,创建目录

file:即使文件不存在,也不会被创建

link:创建软链接

hard:创建硬链接

touch:如果文件不存在,则会创建一个新的文件,如果文件或目录已存在,则更新其最后修改时间

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

示例创建文件

查看创建的文件

吧创建的pk文件链接为xo

创建目录

吧pk文件删除

吧之前wc目录删除,和删除文件方式类似

删除xo链接

好了file模块就到此,更多的方式看用法以及官方即可。。。

时间: 2024-10-12 04:01:31

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模块 file模块常用的几个参数:state.path.src.dest.mode.owner.group.name state后面跟的参数:  touch  :创建文件 directory:创建目录 absent:删除文件或者目录或者链接文件 link:创建链接文件 " path + file " = " dest + file " = " name + file " 1.对普通文件的操作命令: # an

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:指定操作的主机,