我正在使用以下命令,但出现错误[Errno 2] No such file or directory: b'cd'
ansible 服务器 -a "cd /etc/ansible"
我知道我们可以使用剧本,但我只是不想创建,有没有可能执行上述命令?请告诉我。谢谢你。
我正在使用以下命令,但出现错误[Errno 2] No such file or directory: b'cd'
ansible 服务器 -a "cd /etc/ansible"
我知道我们可以使用剧本,但我只是不想创建,有没有可能执行上述命令?请告诉我。谢谢你。
根据您的问题,我了解您喜欢在远程托管节点上执行临时命令,使用类似的清单
[servers]
test1.example.com
test2.example.com
[test]
test1.example.com
test2.example.com
Ansible 引擎可以安装在一个控制节点上,仅用于连接到远程托管节点来管理它们。因此像这样的命令
user@ansible.example.com:~$ ansible test --user ${REMOTE_ACCOUNT} --ask-pass -m shell --args 'cd /etc/ansible'
SSH password:
test1.example.com | FAILED | rc=1 >>
/bin/sh: line 0: cd: /etc/ansible: No such file or directory non-zero return code
test2.example.com.example.com | FAILED | rc=1 >>
/bin/sh: line 0: cd: /etc/ansible: No such file or directory non-zero return code
可能会失败,因为 Ansible 通常不需要也不需要安装在远程 Managed Nodes 上。您可以通过一般测试您的连接和执行
user@ansible.example.com:~$ ansible test --user ${REMOTE_ACCOUNT} --ask-pass -m shell --args 'cd /tmp'
SSH password:
test1.example.com | CHANGED | rc=0 >>
test2.example.com | CHANGED | rc=0 >>
由于您提到的错误代码 2 ( [Errno 2]
, RC2),您还可以查看Ansible 之间的区别raw
shell
command
,或Ansible之间的shell
区别command
。