【发布时间】:2020-09-01 02:38:01
【问题描述】:
使用Ubuntu 18.04,Ansible 2.9, Python 3.6.9,已安装python3-apt
关于基本的 ansible 命令ansible -b all -m apt -a "name=apache2 state=latest"
获取错误:
FAILED! => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python"
},
"changed": false,
"msg": "Could not import python modules: apt, apt_pkg. Please install python3-apt package."
}
$ sudo apt-get install python3-apt
$ ansible --version
ansible 2.9.12
python version = 3.6.9
$ python --version
Python 3.7.6
【问题讨论】:
-
依赖项(如
python3-apt)必须安装在您的剧本所针对的远程主机上,而不是运行ansible的本地主机上。 -
@larsks - 我不知道这种对目标机器的依赖,试过了 - 没用。
-
@toydarian - 不是真的。我也在受控/节点机器上安装了
python3-apt- 但仍然是同样的错误。 -
我通过添加解决了这个问题: vars: ansible_python_interpreter: "/usr/bin/python3" 然后在正确的 python 路径中查找 python3-apt 库
标签: python-3.x ansible ubuntu-18.04