ansible使用file模块管理受控机的目录与文件(ansible2.9.5)
一,ansible的file模块的用途
file 模块实现对文件的基本操作。
例如:
创建文件或目录
删除文件或目录
修改文件权限等
说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnblogs.com/architectforest
对应的源码可以访问这里获取: https://github.com/liuhongdi/
说明:作者:刘宏缔 邮箱: 371125307@qq.com
二,file模块的例子:
1,使用file模块创建文件夹:
#state的取值:
directory 目录
link 链接
touch 创建文件
absent 删除文件或文件夹
[liuhongdi@centos8 work]$ ansible yujian -m file -a "path=/home/webop/ansible/ state=directory mode=0644"
121.122.123.47 | CHANGED => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/libexec/platform-python"
},
"changed": true,
"gid": 1000,
"group": "webop",
"mode": "0644",
"owner": "webop",
"path": "/home/webop/ansible/",
"size": 6,
"state": "directory",
"uid": 1000
}
2,删除一个目录
说明:即使目录非空,也会被删除
[liuhongdi@centos8 work]$ ansible yujian -m file -a "path=/home/webop/ansible/ state=absent"
3,创建一个空文件
[liuhongdi@centos8 work]$ ansible yujian -m file -a "path=/home/webop/ansible.txt state=touch"
4,创建一个符号链接
#src : 源地址
#path :符号链接的地址
[liuhongdi@centos8 work]$ ansible yujian -m file -a "path=/home/webop/ansible_link src=/var/lib state=link"
登录到受控端查看创建的符号链接
[weop@blog ~]$ ll
total 620
lrwxrwxrwx 1 webop webop 8 Apr 20 16:24 ansible_link -> /var/lib
5,修改文件权限
# owner:指定所属用户
#group:指定所属组
#mode:指定权限
[liuhongdi@centos8 work]$ ansible yujian -m file -a "path=/home/webop/ansible.txt owner=root group=root mode=0744" --become --become-method=sudo --become-user=root
登录到受控端查看文件属性的修改:
[webop@blog ~]$ ll ansible.txt -rwxr--r-- 1 root root 0 Apr 20 16:23 ansible.txt
修改成功
三,file模块的其他参数:
recurse:当要操作的文件为目录,将recurse设置为yes,
可以递归的修改目录中文件的属性
force : 当state=link的时候,force参数用来强制创建链接文件
force=yes时,表示强制创建链接文件
四,查看ansible版本
[root@centos8 liuhongdi]# ansible --version
ansible 2.9.5
ansible使用file模块管理受控机的目录与文件(ansible2.9.5)的更多相关文章
- ansible用user/group模块管理受控机上的用户和组(ansible2.9.5)
一,ansible的user/group模块的用途: ansible的user模块用来实现:生成用户.删除用户等用户的管理ansible的group模块用来实现:生成组.删除组等组的管理 说明:刘宏缔 ...
- ansible用get_url模块在受控机下载文件(ansible2.9.5)
一,ansible的get_url模块用途: get_url模块可以在受控机下载文件 可以理解成从受控端执行wget 下载的url支持:http | https | ftp 三种协议 说明:刘宏缔 ...
- ansible使用setup模块查看受控机的信息(ansible2.9.5)
一,ansible的setup模块的用途: 用来获取主机的信息 说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnblogs.com/architectforest 对应的 ...
- ansible 的file 模块
创建.修改.删除文件或者目录: file模块 file模块常用的几个参数:state.path.src.dest.mode.owner.group.name.recurse state后面跟的参数: ...
- ansible使用script模块在受控机上执行脚本(ansible2.9.5)
一,ansible的script模块的用途 script 模块用来在远程主机上执行 ansible 管理主机上的脚本, 即:脚本一直存在于 ansible 管理主机本地, 不需要手动拷贝到远程主机后再 ...
- ansible使用shell模块在受控机上执行命令(ansible2.9.5)
一,ansible的shell模块和command模块的区别? shell模块:在远程主机上执行主控端发出的shell/python脚本 command模块:不能调用shell指令,没有bash的环境 ...
- ansible通过yum/dnf模块给受控机安装软件(ansible2.9.5)
一,使用yum/dnf模块要注意的地方: 使用dnf软件安装/卸载时,需要有root权限, 所以要使用become参数 说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnb ...
- 运维自动化神器ansible之user模块
运维自动化神器ansible之user模块 一.概述 user模块 可管理远程主机上的 用户,比如创建用户.修改用户.删除用户.为用户创建密钥对等操作. 二.参数介绍 name: 用于指定操作 ...
- 自动化运维Ansible之常用模块
目录 0.Ansible模块语法 1.Command模块 2.Shell模块 3.Scripts模块 4.Copy模块 5.File模块 6.Yum模块 7.Service模块 8.Cron模块 9. ...
随机推荐
- Blocks(POJ 3734)
原题如下: Blocks Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 8020 Accepted: 3905 Desc ...
- IT人35岁危机:到底是因为爱还是责任?
互联网蚕食世界,未来属于IT人. 这是属于互联网的时代,每个人都是网络的弄潮儿,由于网络越来越被需要,互联网IT行业被推上了较高的位置,这也导致IT行业的就业环境火热,越来越多的人被IT行业广阔的发展 ...
- 记tp5.1使用composer PhpOffice的xlsx表格文件导入数据库
在项目环境下composer require phpoffice/phpspreadsheet在项目中引用use PhpOffice\PhpSpreadsheet\IOFactory; 下面是 上传x ...
- 预科班D9
2020.09.17星期四 预科班D9 学习内容: 一.列表与字典的嵌套 大前提:将所有同学的信息存起来,取值需求 1.取第二个学生的性别 stus_info = [ {"name" ...
- 【5】JMicro免费在线消息服务
JMicro是一个用Java语言实现的开源微服务全家桶, 源码地址:https://github.com/mynewworldyyl/jmicro, Demo地址:http://jmicro.cn/. ...
- 记一次由selinux引起的使用cat查看文件报错Permission denied的问题排查
事件起因:如下 1.在服务器上root用户,定期会生成一个文件,到/tmp目录,如:qq_5201351.txt,给other加上了r读取 2.zabbix端会周期性取这台服务器/tmp/qq_520 ...
- Redis5设计与源码分析读后感(一)认识Redis
一.初识redis 定义 Redis是一个开源的Key-Value数据库,通常被称为数据结构服务器,其值可以是多种常见的数据格式,且读写性能极高,且所有操作都是原子性的. 高性能的主要原因 1.基于内 ...
- AOP参数校验
1.切面依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId&g ...
- 详细分析 Java 中实现多线程的方法有几种?(从本质上出发)
详细分析 Java 中实现多线程的方法有几种?(从本质上出发) 正确的说法(从本质上出发) 实现多线程的官方正确方法: 2 种. Oracle 官网的文档说明 方法小结 方法一: 实现 Runnabl ...
- Devops实战(一)Docker的部署安装以及Docker-Compose的使用
Docker的部署安装以及Docker-Compose的使用 1.docker和docker-Compose简介 Docker是一组平台即服务(PaaS)产品,它们使用操作系统级虚拟化以称为容器的软件 ...