首页 文章

Simple Ansible playbook:将文件复制到目标服务器的任务文件的位置?

提问于
浏览
4

作为一个概念证明,我正在尝试创建可能是最简单的ansible playbook:将单个文件从ansible服务器复制到服务器场 .

为了完整性,ansible已正确安装 . ping模块效果很好!大声笑

我的POC的剧本写道:

---
- hosts: Staging
  tasks:
    - name: Copy the file
      copy: src=/root/Michael/file.txt dest=/tmp/file.txt

当我运行命令时......

ansible-playbook book.yml

我得到以下输出(总结)......

msg: could not find src=/root/Michael/file.txt

我读过的各种文档和网页都说文件的路径可以是绝对的,也可以是相对于剧本的 . 我试过两次都没有成功 .

我的文件应该放在何处以将其复制到目标服务器?

谢谢!

1 回答

  • 7

    以我的方式发现错误 . 该剧本和文件位于运行ansible-playbook命令的帐户无法访问的目录中 . 因此,虽然ansible-playbook进程可以读取playbook(我从文件所在的目录中调用命令),但进程无法读取文件所在的目录,因此无法找到该文件 .

    解决方案是将playbook和文件移动到一个目录中,该目录可以由运行ansible的帐户读取 . 之后,剧本的工作方式与预期完全一致!

相关问题