当尝试使用用户我的名称/密码{myUser / myPassword}的方式在remoteHost上运行剧本并尝试成为sudo用户{sudoUser}时,我收到身份验证错误。
但是,用户{myUser}拥有sudo权限,可以变成{sudoUser},并且在我直接尝试如下所示操作时可以正常工作。
请注意,我没有root访问权限,并且sudoUser与root有所不同。
这是我的剧本。
APTest.yml
- name: Todo something
hosts: remoteHost
become: yes
become_user: sudoUser
become_method: sudo
我在这里这样跑。
ansible-playbook APTest.yml --extra-vars "ansible_user=myUser ansible_password=myPassword ansible_become_pass=myPassword"
这是我遇到的错误。
fatal: [remoteHost]: FAILED! =>
{"changed": false, "module_stderr": "Shared connection to remoteHost closed.\r\n", "module_stdout":
"\r\nSorry, user myUser is not allowed to execute '/bin/sh -c echo BECOME-SUCCESS-snpgjoyhyzvyufdovpdrznhsphvpvicq;
/usr/bin/python /var/tmp/ansible-tmp-1559374135.81-169614185902386/AnsiballZ_setup.py'
as sudoUser on remoteHost.unix.lch.com.\r\n", "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error", "rc": 1}