хочу запустить простую команду root от ansible - PullRequest
0 голосов
/ 05 ноября 2019

Я могу запустить обычную команду uptime на удаленном Linux. но команда с правами суперпользователя получает ошибку. что здесь не так? Обычно я должен войти в удаленный Linux и "sudo su -", а затем выполнить команду dmidecode.

[root@automation ansible]# ansible test -m shell -a "dmidecode" -c paramiko -k -b
test101.com | FAILED | rc=127 >>
/bin/sh: dmidecode: command not foundnon-zero return code




[root@automation ansible]# ansible test -m shell -a "uptime" -c paramiko -k
SSH password:
test101.com | CHANGED | rc=0 >>
 21:34:38 up 284 days,  8:24,  2 users,  load average: 0.32, 0.31, 0.35
[root@automation ansible]# cat ansible.cfg
[defaults]
inventory       = /etc/ansible/hosts
host_key_checking = false
remote_tmp     = $HOME/.ansible/tmp
pattern        = *
forks          = 10
poll_interval  = 15
ask_pass=True
sudo_user      = root
#user           = test
remote_user = test
transport      = smart
#module_lang    = C
gathering = smart
fact_caching = redis
sudo_exe = sudo
timeout = 15
ansible_managed = Ansible managed: {file} modified on %Y-%m-%d %H:%M:%S by {uid} on {host}
deprecation_warnings=False
fact_caching = memory
log_path=/etc/ansible/logfile
command_warnings=False
[paramiko_connection]
[ssh_connection]
[accelerate]

Ответы [ 2 ]

1 голос
/ 05 ноября 2019

Q: "Я обычный пользователь @ test и мне нужно" sudo su - ", чтобы быть пользователем root на удаленном" test ", чтобы выполнить dmidecode"

Проблема заключается в том, что "команда dmidecode не найдена" от root@test.

/ bin / sh: dmidecode: команда не найдена не нулевой код возврата

A: Посмотрите, что такое PATH и где dmidecode

[root@automation ansible]# ansible test -m command -a "echo $PATH" -c paramiko -k -b
[root@automation ansible]# ansible test -m command -a "which dmidecode" -c paramiko -k -b

Возможно, вы захотите войти на root @ test и выясните в чем проблема.

0 голосов
/ 05 ноября 2019

Укажите путь для dmidecode и укажите становление в аргументах.

ansible test -m shell -a "/path of the file/dmidecode" -c paramiko -k -b --become -u test --ask-become-pass
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...