Ansible não funciona com sudo

1

Estou tentando usar o ansible, mas parece que não consigo fazê-lo funcionar com o sudo. Eu minimizei o problema para isso:

Isso não funciona:

ansible localhost --ask-become-pass -m shell  -a "cat  /var/log/syslog"

Dá esta saída: eu digito senha e, em seguida, erros.

SUDO password:
localhost | FAILED | rc=1 >>
cat: /var/log/syslog: Permission denied

Isso funciona bem:

ssh -t localhost sudo cat /var/log/syslog #without ansible
ansible localhost -m shell -a "ls" #without sudo

Outros diagnósticos:

#expecting last line to be 'root'
ansible localhost  --become-user=root --ask-become-pass -m shell  -a "whoami"

fornece esta saída, quando a senha correta é inserida.

SUDO password:
localhost | SUCCESS | rc=0 >>
richard
    
por ctrl-alt-delor 28.08.2017 / 20:16

2 respostas

0

Parece que --ask-become-pass não é suficiente, você também precisa do parâmetro --become . Portanto, o comando é: ansible localhost --become --ask-become-pass -m shell -a "cat /var/log/syslog" .

Também notei que não preciso de --ask-become-pass , acho que a senha está sendo armazenada em cache, como sudo .

    
por 28.08.2017 / 20:45
0

Você pode tentar adicionar isso ao comando quando executar --ask-become-pass

Então, ansible yoga --become-user=root --ask-become-pass -m shell -a "cat /var/log/syslog"

    
por 28.08.2017 / 20:20

Tags