Ansible非root sudo用户和“成为”特权升级

Ansible非root sudo用户和“成为”特权升级,第1张

概述我已经设置了一个包含sudo权限的用户david的方框.我可以进入框中并执行像apt-get install这样的sudo *** 作.当我尝试使用Ansible的“成为特权升级”做同样的事情时,我得到一个权限被拒绝错误.所以一个简单的剧本可能看起来像这样: simple_playbook.yml: ---- name: Testing... hosts: all become: true 我已经设置了一个包含sudo权限的用户davID的方框.我可以进入框中并执行像apt-get install这样的sudo *** 作.当我尝试使用Ansible的“成为特权升级”做同样的事情时,我得到一个权限被拒绝错误.所以一个简单的剧本可能看起来像这样:

simple_playbook.yml:

---- name: Testing...  hosts: all  become: true  become_user: davID  become_method: sudo  tasks:    - name: Just want to install sqlite3 for example...      apt: name=sqlite3 state=present

我使用以下命令运行此playbook:

ansible-playbook -i inventory simple_playbook.yml --ask-become-pass

这给了我一个密码的提示,我给出了,我得到以下错误(缩写):

fatal: [123.45.67.89]: Failed! => {...Failed: E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denIEd)\nE: Unable to lock the administration directory(/var/lib/dpkg/),are you root?\n",...}

为什么我被拒绝了?

附加信息

我正在运行Ansible 2.1.1.0并且我的目标是Ubuntu 16.04.如果我按照Ansible<使用remote_user和sudo选项v1.9,它工作正常,像这样: remote_user:davID
sudo:是的

更新

本地和远程用户名是相同的.为了使这个工作,我只需要指定成为:是(请参阅@ techraf的答案):

解决方法

Why am I getting permission denIEd?

因为APT需要root权限(请参阅错误:你是root用户吗?)并且您正在以davID身份运行任务.

根据这些设置:

become: truebecome_user: davIDbecome_method: sudo

Ansible使用sudo方法成为大卫.它基本上使用sudo davID运行其Python脚本.

the user ‘davID’ on the remote Box has sudo privileges.

这意味着davID可以使用sudo-executable执行命令(部分或全部)来更改子进程(命令)的有效用户.如果没有给出用户名,则此进程以root帐户运行.

比较这两个命令的结果:

$sudo whoamiroot$sudo davID whoamidavID

回到APT问题,您(从Cli)以及Ansible(使用您的帐户使用SSH连接)需要运行:

sudo apt-get install sqlite3

不:

sudo davID apt-get install sqlite3

这将失败显示Ansible非常确切的消息.

默认情况下,以下playbook将升级为root用户:

---- name: Testing...     hosts: all  become: true  tasks:    - name: Just want to install sqlite3 for example...      apt: name=sqlite3 state=present
总结

以上是内存溢出为你收集整理的Ansible非root sudo用户和“成为”特权升级全部内容,希望文章能够帮你解决Ansible非root sudo用户和“成为”特权升级所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1045101.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存