shell - 无法使用 Ansible Tower 在远程节点上访问和执行脚本
问题描述
我有类似的问题,但我的错误消息说:
{
"changed": false,
"msg": "Could not find or access 'woshutdown.sh'
Searched in: /var/ansible/tmp/awx_29146_42q4g5dt/project/qadeployment/files/woshutdown.sh
/var/ansible/tmp/awx_29146_42q4g5dt/project/qadeployment/woshutdown.sh
/var/ansible/tmp/awx_29146_42q4g5dt/project/qadeployment/files/woshutdown.sh
/var/ansible/tmp/awx_29146_42q4g5dt/project/qadeployment/woshutdown.sh on the Ansible Controller.
If you are using a module and expect the file to exist on the remote, see the remote_src option"
}
我的脚本是调用 woshutdown.sh,它意味着调用另一个脚本来关闭它所在的远程服务器。我在脚本的开头有 shabang,但我得到了那个信息。
这是我的剧本: 上述任务的剧本
这是脚本所在的位置: 远程服务器上的脚本位置
我试过脚本模块我试过 CMD 模块和 sh 命令。请帮忙!!
解决方案
当前目录永远不会放在$PATH
shell 中,因为它存在严重的安全风险。您需要指定脚本的完全限定路径,在您的情况下,由于chdir:
is just ./
:
- name: shutdown etc etc
command: ./woshutdown.sh
args:
chdir: /methode/common/etc-etc-etc
推荐阅读
- apache-flink - 在 Flink 集群中注册 Java 类
- python - 将 numpy 数组值映射到散点
- php - 在 prestashop 上添加新产品时强制 ID
- ruby-on-rails - Rails ActiveStorage 处理后更新附件
- sql - 您如何使用 postgreSQL 将多个结果分组到一个列中并为每个结果计数
- html - Angular组件应用父指定样式
- elasticsearch - Search Guard 未初始化 (SG11)
- r - 如何使用 R 中的 MICE 包估算丢失的数据?
- javascript - 在 ChartJS 中重新创建此图
- javascript - 如何通过回调为变量赋值?