我需要将文件从 ansible 控制节点的/root
复制到远程节点的/root
。
如果我将该文件保存在控制节点的任何其他位置(例如/tmp(,并且能够将其复制到远程节点的/root(因为我提到过在 ansible.cfg 中
但是如何将文件从 ansible 控制节点的/root 复制到远程节点的/root ?
它给出的错误为
'fatal: [testserver]: 失败! => {"changed": false, "msg": "无法在 Ansible 控制器上找到或访问'/root/abc.txt'
请注意,文件存在于控制器的/root/中。
谢谢
要在控制器上访问/root
中的文件,您需要...root
控制器上。但是,在控制器上以 root 身份运行剧本并不是一个好主意。如果您的当前用户在 localhost 上具有权限提升所需的权限,则可能的情况是。
- 对
localhost
使用权限提升来复制文件或抓取变量中的文件内容。 - 将生成的文件或内容复制到目标主机。
- 如果复制了文件,请删除副本。
注意:如果出于隐私/安全原因将文件放在/root
中,更好的选择是将此文件直接存储在项目中,并使用ansible-vault
加密