Python não está disponível no Ubuntu xenial?

0

Acabei de provisionar uma máquina Xenial com vagrant (com base em xenial64-20180228.1.0-virtualbox.box ). No meu sistema host eu tenho python:

» lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.4 LTS
Release:        16.04
Codename:       xenial

» python --version
Python 2.7.12

Mas na máquina provisionada,

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.4 LTS
Release:        16.04
Codename:       xenial


$ python --version
The program 'python' can be found in the following packages:
 * python-minimal
 * python3
Ask your administrator to install one of them

$ python3 --version
Python 3.5.2

Se eu instalar o python, parece bem:

vagrant@ubuntu-xenial:~$ sudo apt-get install python
vagrant@ubuntu-xenial:~$ python --version
Python 2.7.12

Por que isso? É normal que python não esteja instalado em uma imagem xenial ? Preciso provisioná-lo manualmente então?

Observação: o motivo pelo qual eu preciso de python , e não simplesmente python3 , é que ansible procura explicitamente quando implantar na máquina:

/bin/sh: 1: /usr/bin/python: not found
    
por dangonfast 16.03.2018 / 15:43

1 resposta

2

De acordo com o DistroWatch , o Ubuntu Xenial vem com o Python 3.5.1, que parece atípico quando comparado a outros lançamentos comumente sendo empacotado com 2.XX

Consulte os comentários em esta pergunta por que o Python 2 é chamado pelo comando python no Ubuntu. A resposta principal recomenda usar um alias para chamar o Python 3 com python , em oposição a usar links simbólicos e quebrar coisas que usam no Python 2. Embora eu suponha que não ter o Python 2 instalado prejudique o propósito dessa precaução, e o symlinking pode ser uma solução viável.

Tem certeza de que ansible não está procurando pelo Python 2? Aqui é um link muito recente para a documentação deles sobre o próximo suporte do Python 3.

    
por 16.03.2018 / 16:11