Ansible中的同步模块(Synchronize)

 

例1:将主控方/tmp/test/ 目录文件推送到指定节点的/tmp/test/目录下。

[root@master ~]# ansible all -m synchronize -a ‘src=/tmp/test/ dest=/tmp/test/ compress=yes‘

例2:将主控方master上/data/stu01中的文件同步到client01主机的/data/soft的文件夹中。

[root@master tmp]# ansible client01 -m synchronize -a ‘src=/data/stu01 dest=/data/soft/ compress=yes delete=yes checksum=yes --exclude=.git‘

执行效果:
delete=yes 使两边的内容一样(即以推送方为主)

compress=yes 开启压缩,默认为开启

checksum=yes 检测sum值,防止文件篡改,默认关闭

--exclude=.git 忽略同步.git 结尾的文件

由于模块,默认都是推送push。因此,如果你在使用拉取pull 功能的时候,可以参考如下来实现mode=pull 更改推送模式为拉取模式

参数解释: 

参数

必填

默认值

选项

说明

archive

no

yes

yes

 no

显示rsync的存档标志所属信息

checksum

no

no

 yes

  no

校验

compress

no

yes

yes

 no

在传送过程中压缩文件数据

dest

yes

  

目标路径,路径可以绝对或相对

delete

no

no

yes

no

删除srv中不存在的文件

copy_links

no

no

yes

no

复制符号链接,是映射的文件复制

dest_port

no

22

yes

no

目标主机端口号(ansible_ssh_port优先于此值)

group

no

存档选项值

yes

no

保留文件的所属组

owner

no

存档选项值

yes

no

保留文件的所属者(只有超级用户可以操作)

perms

no

存档选项值

yes

no

保留文件的权限

rsync_opts

no

no

 

通过此选项指定其他的rsync的选项

rsync_path

no

  

指定rsync命令到远程主机上运行

rsync_timeout

no

0

 

指定rsync的timeout时间以秒为单位

src

yes

  

源地址(路径可以是绝对或相对的)

times

no

存档选项值

yes

no

保留文件的修改时间

exclude-from

no

no

yes

no

用于定义排除多个文件夹和文件

exclude

no

no

yes

no

用于定义排除单独的文件夹和文件

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值