Ubuntu 14.4 viene con Python 2.7.6 incorporado, pero me gustaría actualizarlo a 2.7.9 (tiene las características de seguridad que quiero).
¿Es eso posible? Si es así, ¿cómo se puede lograr esto?
Ubuntu 14.4 viene con Python 2.7.6 incorporado, pero me gustaría actualizarlo a 2.7.9 (tiene las características de seguridad que quiero).
¿Es eso posible? Si es así, ¿cómo se puede lograr esto?
Respuestas:
Puedes usar pyenv:
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
git clone https://github.com/pyenv/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv
Luego añade
# for PyEnv
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$HOME/.pyenv/bin:$PATH"
export PATH="$HOME/.pyenv/shims:$PATH"
eval "$(pyenv init -)"
a .bash_profile, entonces puede ver la versión de Python que desea instalar o actualizar:
pyenv install --list
quieres python 2.7.10? puedes probar:
pyenv virtualenv 2.7.10
Espero que te ayude.
ppa: fkrull / deadsnakes es la última versión de python2.7
sudo add-apt-repository ppa:fkrull/deadsnakes
sudo apt-get update
sudo apt-get upgrade
Actualizará Python a 2.7.10
No soy fanático de las respuestas anteriores que sugieren la instalación desde varios PPA. No pretendo faltar al respeto, pero no conozco a las personas que los construyeron y no tengo idea de lo que podría haber allí. En cualquier entorno donde alguien tenga que responder a un profesional de seguridad, esa práctica sería mal vista.
Acabo de descubrir que descargar 2.7.9 de la fuente e instalarlo en paralelo fue un buen comienzo. Esta impresionante publicación de blog cubrió los pasos. (recreado aquí para cumplir con las pautas de desbordamiento de pila)
wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz
tar xfz Python-2.7.9.tgz
cd Python-2.7.9/
./configure --prefix /usr/local/lib/python2.7.9
make
make install
Prueba si la versión funciona
/usr/local/lib/python2.7.9/bin/python -V
Python 2.7.9
Ahora que tengo 2.7.9 instalado, puedo llamarlo directamente o vincularlo desde donde quiera. (o copiarlo en un virtualenv, etc.)
Y tenga en cuenta que llegué aquí desde una situación en la que recibía advertencias de plataforma inseguras y advertencias de SNI Missing. Lo que me llevó hasta aquí . Me imagino que muchas personas están encontrando esta pregunta por el mismo camino. Y si es por eso que estás aquí, este fragmento también te puede ser útil
pip install urllib3[secure]
virtualenv
. La razón por la que siento que esto es mejor, es que no depende de aplicaciones o repositorios de terceros que puedan romper algo más.
Aquí hay un nuevo repositorio de terceros actualizado:
sudo add-apt-repository ppa:jonathonf/python-2.7
sudo apt-get update
sudo apt-get install python2.7
python --version
La versión que desea ya está en Ubuntu, en versión Vivid (pre). Si eres valiente, puedes mezclar versiones e instalar la versión de Python de Vivid en Trusty. A continuación se muestra una solución genérica que funciona en algunos paquetes, no puedo garantizarlo con Python. Las posibilidades son ~ 50/50 de que tenga éxito. Sin embargo, si encuentra un repositorio de backports adecuado para 14.04 con la versión de paquete requerida, entonces debería ser una mejor opción.
Tiene una línea '... confiable' en su /etc/apt/sources.list
, cópiela dos veces, cambiando 'confiable' a 'utópica' y 'vívida'.
Corre apt-get update
y luego apt-get -t vivid install python2.7
. Revise las dependencias instaladas antes de continuar. Anule la actualización cuando sospeche algún daño en su sistema (paquetes importantes eliminados, etc.).
Elimina o pica las dos líneas de /etc/apt/sources.list
.
Nunca lo hagas en máquinas de producción. Haga una copia de seguridad de su sistema operativo y prepare medios de arranque para restaurarlo si es necesario. Esperar problemas en las actualizaciones. Has sido advertido.