如何使用复制模块删除ansible中的临时文件
How to remove temp file in ansible using copy module
例如,我正在使用临时命令
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 的 "working" 目录。
据我所知,它不应该被删除。
对于每个任务,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
。但是存在有人拦截公共 /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
中找到了临时文件如何删除远程主机上的这个临时目录? 使用另一个模块,如 "commmand" ?在复制ansible模块的参考中,我没有找到关于复制后删除临时文件的信息。
~/.ansible/tmp
是远程主机上 Ansible 的 "working" 目录。
据我所知,它不应该被删除。
对于每个任务,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
。但是存在有人拦截公共 /tmp
目录中的临时数据的风险。