ansible的file模块详解

四、ansible常用模块

1.file模块

file模块主要用于远程主机上的文件的操作,file模块包含下面选项:

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

state :

file : 查看文件状态,默认选项,若文件不存在,也不会被创建,会报错文件不存在,

touch : 如果文件存在,则会创建一个行的文件,如果文件或目录已存在,则更新时间戳

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

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

link : 创建软链接

hard : 创建硬链接

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

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

mode : 定义文件/目录权限

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

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

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

ansible node1 -m file -a 'path=/root/haha/test.txt state=touch owner=devops group=root mode=744' : 用file模板指定目录,state是创建文件,拥有人是devops,拥有组是root,权限是744,如果文件存在会修改文件的时间戳

ansible node1 -m file -a 'path=/tmp/test state=directory owner=root group=root mode=755' : 用file模板指定目录,state是创建目录,拥有人是root,拥有组是root,权限是755,目录存在就不会执行

ansible node1 -m file -a 'path=/tmp/test/aa/bb state=directory owner=root group=root mode=755' : 同上,创建多个目录

ansible node1 -m file -a 'path=/tmp/test state=absent' : 删除多级目录

相关推荐
mounter6259 分钟前
从 2026 LSFMM/BPF 峰会看 eBPF 生态演进:技术变革、工具全景与资源泄漏诊断实战
linux·linux kernel·kernel
M78佐菲13 分钟前
Linux学习笔记:网络通信
linux·笔记·学习·算法
AAA代码批发商22 分钟前
Days37 Linux C 网络编程:UDP、TCP 与 HTTP 协议实战详解
linux·c语言·网络
Ningcode_cloud25 分钟前
什么是CICD? GitLab + Jenkins 持续集成实战部署手册
运维·ci/cd·云原生·容器·gitlab·jenkins
好评12432 分钟前
【Linux】传输层协议UDP
linux·运维·udp
Csxyzj41 分钟前
基于Linux+Docker NAT的Ollama多实例负载均衡部署
运维·docker·容器
流光D1 小时前
AI时代,搭建 web 站点并配置 nginx 反向代理流程
运维·服务器·前端·人工智能·nginx·ai·ai编程
GreatVicent1 小时前
AI Agent互操作标准化加速:A2A协议正式加入Linux基金会
linux·运维·人工智能·agent·aws·a2a
奇树谦1 小时前
Seaweed中filer.sync原理
linux·服务器·网络
Huangjin007_1 小时前
【Linux 系统篇(十六)】进程(四) : 僵尸进程、孤儿进程、进程优先级
linux·运维·服务器