【发布时间】:2023-03-14 00:05:01
【问题描述】:
我正在学习 Ansible,但我遇到了“apt”模块的问题。 我编写了 ansible.cfg 和库存文件,我可以正确运行
ansible testserver -m ping
现在我正在尝试在目标上安装 NGinx,正在运行
ansible testserver -s -m apt -a name=nginx
但操作停止。这是带有“-vvv”标志的输出
<IP> ESTABLISH CONNECTION FOR USER: user
<IP> REMOTE_MODULE apt name=nginx
<IP> EXEC ['ssh', '-C', '-tt', '-q', '-o', 'ControlMaster=auto', '-o', 'ControlPersist=60s', '-o', 'ControlPath=/home/user/.ansible/cp/ansible-ssh-%h-%p-%r', '-o', 'KbdInteractiveAuthentication=no', '-o', 'PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey', '-o', 'PasswordAuthentication=no', '-o', 'ConnectTimeout=10', 'IP', "/bin/sh -c 'mkdir -p $HOME/.ansible/tmp/ansible-tmp-1445515245.75-119301060889986 && chmod a+rx $HOME/.ansible/tmp/ansible-tmp-1445515245.75-119301060889986 && echo $HOME/.ansible/tmp/ansible-tmp-1445515245.75-119301060889986'"]
<IP> PUT /tmp/tmpWaB4Lf TO /home/user/.ansible/tmp/ansible-tmp-1445515245.75-119301060889986/apt
<IP> EXEC ['ssh', '-C', '-tt', '-q', '-o', 'ControlMaster=auto', '-o', 'ControlPersist=60s', '-o', 'ControlPath=/home/user/.ansible/cp/ansible-ssh-%h-%p-%r', '-o', 'KbdInteractiveAuthentication=no', '-o', 'PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey', '-o', 'PasswordAuthentication=no', '-o', 'ConnectTimeout=10', 'IP', '/bin/sh -c \'sudo -k && sudo -H -S -p "[sudo via ansible, key=gakusrfbokzukkfpfgbvuseekjyqlllu] password: " -u root /bin/sh -c \'"\'"\'echo SUDO-SUCCESS-gakusrfbokzukkfpfgbvuseekjyqlllu; /usr/bin/python /home/user/.ansible/tmp/ansible-tmp-1445515245.75-119301060889986/apt; rm -rf /home/user/.ansible/tmp/ansible-tmp-1445515245.75-119301060889986/ >/dev/null 2>&1\'"\'"\'\'']
你知道问题的根源吗?
谢谢
【问题讨论】:
-
远程服务器上是否安装了
aptitude?apt模块在幕后需要它......可能是一个想法。 -
是的。我想我找到了解决方案:似乎 sudo 命令不一定需要密码才能正常工作。这意味着我必须配置一个无密码的 sudo (askubuntu.com/questions/192050/…)