ping命令在Ubuntu 16.04上出现Ansible错误

时间:2018-06-22 07:42:53

标签: ansible vagrant

我有一个无聊的Ubuntu 16.04 VM,已安装Ansible(使用sudo apt install ansible),我配置了/etc/ansible/hosts文件,当我尝试运行ansible all -m ping时,出现此错误:

Traceback (most recent call last):
  File "/usr/bin/ansible", line 85, in <module>
    sys.exit(cli.run())
  File "/usr/lib/python2.7/dist-packages/ansible/cli/adhoc.py", line 190, in run
    self._tqm.cleanup()
  File "/usr/lib/python2.7/dist-packages/ansible/executor/task_queue_manager.py", line 245, in cleanup
    self._cleanup_processes()
  File "/usr/lib/python2.7/dist-packages/ansible/executor/task_queue_manager.py", line 249, in _cleanup_processes
    self._result_prc.terminate()
  File "/usr/lib/python2.7/dist-packages/ansible/executor/process/result.py", line 89, in terminate
    super(ResultProcess, self).terminate()
  File "/usr/lib/python2.7/multiprocessing/process.py", line 137, in terminate
    self._popen.terminate()
AttributeError: 'NoneType' object has no attribute 'terminate'

我在Vagrant Centos7映像上尝试了相同的安装和配置文件,并且一切正常。

我无法找到相似的东西,但也许我的搜索技能不是很好。有人遇到吗?在Ubuntu上还要安装其他东西吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

我找到了适用于Ubuntu版本的解决方案。不要仅使用sudo apt install ansible来安装它,而需要从ansible仓库中安装它。

运行此:

sudo apt-add-repository ppa:ansible/ansible
sudo apt update
sudo apt install ansible -y

我不知道为什么它会这样工作,我没有时间研究它,但是它可以使用ppa:ansible/ansible来工作。我猜那个apt中的那个已经过时了。

PS:感谢那些投票否决的人。