Linux

ansible 錯誤:無法在路徑中找到所需的可執行 rsync:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/sbin'}

  • November 20, 2020
- hosts: host1
 remote_user: root
 tasks:
  - synchronize:
          src: /etc/httpd
          dest: /mytestfile

我收到以下錯誤。有人可以幫忙嗎

PLAY [host1] *******************************************************************

TASK [Gathering Facts] *********************************************************
ok: [13.71.122.117]

TASK [synchronize] *************************************************************
fatal: [13.71.122.117]: FAILED! => {"changed": false, "failed": true, "msg": "Failed to find required executable rsync in paths: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/sbin"}
       to retry, use: --limit @/ansible/hai_yaml.retry

PLAY RECAP *********************************************************************
13.71.122.117              : ok=1    changed=0    unreachable=0    failed=1

您可以在節點上自動安裝基礎包。這里分享apt模組定義相同。

- name: "Installing Rsync"
 apt: >
   pkg={{ item }}
   state=latest
   update_cache=yes
   cache_valid_time=3600
 with_items:
 - rsync

Yum 模組定義如下所示。

- name: install the latest version of rsync
 yum:
   name: rsync
   state: latest

我可能有點晚了。但是在這裡添加一個答案,以防它幫助其他人。

當測試因“找不到 rsync”而失敗時,我相信它是在談論 ansible 控制器上的 rsync,而不是 ansible 目標。

因此,如果您複製此任務但將其設為本地操作,則 rsync 將存在於兩端:

- name: install rsync on the ansible controller
 connection: local
 package:
   name: rsync
   state: present

引用自:https://serverfault.com/questions/886464