例如我正在使用 adhoc 命令
ansible some_group_of_hosts -m copy -a "src=/some_local_file
dest=/remote_path/" -u someuser --become-user root --ask-pass
--ask-become-pass
复制到远程主机后。我在目录 ~/.ansible/tmp 中找到了临时文件
如何删除远程主机上的这个临时目录? 使用另一个模块,如“commmand”?在复制 ansible 模块的引用中,我没有找到有关复制后删除临时文件的信息。
最佳答案
~/.ansible/tmp
是远程主机上 Ansible 的“工作”目录。
据我所知,它不应该被删除。
对于每个任务,Ansible 创建 ~/.ansible/tmp/ansible-tmp-12345.1234.12345
目录,然后只清理 ansible-tmp-xxx
子目录,而不是“root” "工作目录。
您可以使用 remote_tmp 更改此远程路径设置或使用环境变量,例如:
ANSIBLE_REMOTE_TEMP=/tmp ansible some_group_of_hosts -m copy -a "src=/some_local_file dest=/remote_path/" -u someuser --become-user root --ask-pass --ask-become-pass
这将强制 Ansible 在 /tmp
中工作,而不是创建 ~/.ansible/tmp
。但是存在有人拦截公共(public) /tmp
目录中的临时数据的风险。
关于linux - 如何使用复制模块删除ansible中的临时文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46231061/