ansible 中 --ask-pass 和 --ask-sudo-pass 之间的区别?
Difference between --ask-pass and --ask-sudo-pass in ansible?
我正在尝试编写一些 ansible 剧本,但对 ask_pass 和 ask_sudo_pass 感到困惑。谁能给我一个明确的想法?
在清单中提供与主机的连接,例如
[local_test]
test-host ansible_ssh_user=some_user ansible_host=192.168.0.2
请注意,清单中未提供密码或密钥。可以通过在命令中提供参数来在 CLI 上提供该用户的密码,例如; ansible-playbook playbook.yml -i inventory ask_pass
。不将密码放在清单中的原因是在使用共享文件时,例如在 Git.
中放置库存时
现在,ask_sudo_pass
表示需要 sudo 权限时,例如:
---
- hosts: localhost
become: True # Execute whole playbook with root privileges
tasks:
- shell: whoami
register: me
- debug:
msg: "{{ me.stdout }}"
输出:
TASK [debug] *
ok: [localhost] =>
msg: root
TLDR:一个是询问用户密码,另一个是询问管理员权限密码
我正在尝试编写一些 ansible 剧本,但对 ask_pass 和 ask_sudo_pass 感到困惑。谁能给我一个明确的想法?
在清单中提供与主机的连接,例如
[local_test]
test-host ansible_ssh_user=some_user ansible_host=192.168.0.2
请注意,清单中未提供密码或密钥。可以通过在命令中提供参数来在 CLI 上提供该用户的密码,例如; ansible-playbook playbook.yml -i inventory ask_pass
。不将密码放在清单中的原因是在使用共享文件时,例如在 Git.
现在,ask_sudo_pass
表示需要 sudo 权限时,例如:
---
- hosts: localhost
become: True # Execute whole playbook with root privileges
tasks:
- shell: whoami
register: me
- debug:
msg: "{{ me.stdout }}"
输出:
TASK [debug] *
ok: [localhost] =>
msg: root
TLDR:一个是询问用户密码,另一个是询问管理员权限密码