为 Ansible 指定 sudo 密码 [英] Specify sudo password for Ansible
问题描述
如何以非交互方式为 Ansible 指定 sudo 密码?
How do I specify a sudo password for Ansible in non-interactive way?
我正在像这样运行 Ansible playbook:
I'm running Ansible playbook like this:
$ ansible-playbook playbook.yml -i inventory.ini \
--user=username --ask-sudo-pass
但我想像这样运行它:
$ ansible-playbook playbook.yml -i inventory.ini \
--user=username` **--sudo-pass=12345**
有办法吗?我想尽可能自动化我的项目部署.
Is there a way? I want to automate my project deployment as much as possible.
推荐答案
您可以通过 --extra-vars "name=value"
在命令行上传递变量.Sudo 密码变量是 ansible_sudo_pass
.所以你的命令看起来像:
You can pass variable on the command line via --extra-vars "name=value"
. Sudo password variable is ansible_sudo_pass
. So your command would look like:
ansible-playbook playbook.yml -i inventory.ini --user=username \
--extra-vars "ansible_sudo_pass=yourPassword"
2017 年更新:Ansible 2.2.1.0 现在使用 var ansible_become_pass
.两者似乎都有效.
Update 2017: Ansible 2.2.1.0 now uses var ansible_become_pass
. Either seems to work.
2021 年更新:ansible_become_pass 仍然有效,但现在,我们应该使用 -e 而不是 --extra-vars
Update 2021: ansible_become_pass is still working, but for now, we should use -e instead of --extra-vars
这篇关于为 Ansible 指定 sudo 密码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!