可能的原因是目标计算机的文件路径有误或Ansible的路径设置有误。确认路径是否正确,并尝试使用绝对路径。
以下是一个包含绝对路径示例的任务,其中包含fetch模块,它将从目标主机上获取文件,并将其放入本地主机上的/tmp目录。
- name: Fetch file from remote host
hosts: target_server
tasks:
- name: Get file from remote host
fetch:
src: /path/to/remote/file
dest: /tmp
flat: yes
如果目标计算机上有/srv/myfile.txt,则可以使用以下任务命令来在本地/tmp目录中获取该文件。
ansible-playbook fetchfile.yml --extra-vars "host=target_server"
请注意,在本地主机上,文件将被放置在/tmp目录中,并以/myfile.txt进行命名(flat参数)。
如果路径问题已被排除,则可以在任务中使用“ignore_errors: true”来防止错误引发任务失败。但是,这只会在您确信文件存在的情况下执行此操作。