我有一个简单的ansible playbook,我希望将目标机器上的文件夹rsync到我的ansible主机上。
---
- hosts: testServers
sudo: yes
gather_facts: yes
tasks:
- synchronize: mode=pull src=/home/prod/live-tpb/log/ dest=/root/playbooks/backup_live_folders/logs/{{ ansible_hostname }}
但是当我运行这个剧本时,它错误地说
rsync: - out-format =<>%i%n%L:未知选项
使用-vvvv选项生成的完整错误如下所示。
failed: [192.168.101.174 -> 127.0.0.1] => {"cmd": "rsync --delay-updates -FF --compress --archive --rsh 'ssh -S none -o StrictHostKeyChecking=no' --rsync-path=\"sudo rsync\" --out-format='<<CHANGED>>%i %n%L' \"ansible@192.168.101.174:/home/prod/live-tpb/log/\" \"/root/playbooks/backup_live_folders/logs/serverC6174\"", "failed": true, "rc": 1}
msg: rsync: --out-format=<<CHANGED>>%i %n%L: unknown option
rsync error: syntax or usage error (code 1) at main.c(1231) [client=2.6.8]
当我直接运行命令时,这也失败了 -
[root@server11 backup_live_folders]# rsync --delay-updates -FF --compress --archive --rsh 'ssh -S none -o StrictHostKeyChecking=no' --rsync-path="sudo rsync" --out-format='<<CHANGED>>%i %n%L' ansible@192.168.101.174:/home/prod/live-tpb/logs/ /root/playbooks/backup_live_folders/logs/serverC6174
rsync: --out-format=<<CHANGED>>%i %n%L: unknown option
rsync error: syntax or usage error (code 1) at main.c(1231) [client=2.6.8]
这看起来像是14.04上的rsync问题。我的主机是RHEL 5.4,目标机器是ubuntu 14.04。
如何从ansible中禁用--out-format选项?有没有其他人遇到类似的问题?如果是,如何解决这个问题?
由于
答案 0 :(得分:1)
这是版本的问题。将源计算机上的rsync从v2.6.8升级到v3.0.7解决了这个问题。
为这个问题道歉。