为 Ansible 指定 sudo 密码 [英] Specify sudo password for Ansible

查看:52
本文介绍了为 Ansible 指定 sudo 密码的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何以非交互方式为 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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆