5

作为概念验证,我正在尝试创建可能是有史以来最简单的 ansible playbook:将单个文件从 ansible 服务器复制到服务器场。

为了完整起见,ansible 已正确安装。ping 模块工作得很好!哈哈

我的 POC 的剧本如下:

---
- 主持人:分期
  任务:
    - 名称:复制文件
      复制:src=/root/Michael/file.txt dest=/tmp/file.txt

当我运行命令时...

ansible-playbook book.yml

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

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

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

我的文件应该在哪里才能将其复制到目标服务器?

谢谢!

4

1 回答 1

8

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

解决方案是将剧本和文件移动到运行 ansible 的帐户可以读取的目录中。在那之后,剧本完全按预期工作!

于 2013-09-23T20:50:36.483 回答