Ubuntu 14.4 viene fornito con Python 2.7.6 integrato, ma vorrei aggiornarlo a 2.7.9 (ha funzionalità di sicurezza che desidero).
È anche possibile? In tal caso, come può essere raggiunto?
Ubuntu 14.4 viene fornito con Python 2.7.6 integrato, ma vorrei aggiornarlo a 2.7.9 (ha funzionalità di sicurezza che desidero).
È anche possibile? In tal caso, come può essere raggiunto?
Risposte:
Puoi usare pyenv:
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
git clone https://github.com/pyenv/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv
Quindi aggiungi
# for PyEnv
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$HOME/.pyenv/bin:$PATH"
export PATH="$HOME/.pyenv/shims:$PATH"
eval "$(pyenv init -)"
su .bash_profile puoi vedere la versione di Python che vuoi installare o aggiornare:
pyenv install --list
vuoi Python 2.7.10? Puoi provare:
pyenv virtualenv 2.7.10
Spero che ti possa aiutare.
ppa: fkrull / deadsnakes è l'ultima versione di python2.7
sudo add-apt-repository ppa:fkrull/deadsnakes
sudo apt-get update
sudo apt-get upgrade
Aggiornerà Python alla 2.7.10
Non sono un fan delle risposte precedenti che suggeriscono l'installazione da vari PPA. Non ho mancato di rispetto, ma non conosco le persone che le hanno costruite e non ho idea di cosa ci possa essere. In qualsiasi ambiente in cui qualcuno deve rispondere a un professionista della sicurezza che la pratica sarebbe disapprovata.
Ho appena scoperto che scaricare 2.7.9 dal sorgente e installarlo fianco a fianco è stato un buon inizio. Questo fantastico post sul blog ha coperto i passaggi. (ricreato qui per conformarsi alle linee guida di overflow dello stack)
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
Verifica se la versione funziona
/usr/local/lib/python2.7.9/bin/python -V
Python 2.7.9
Ora che ho installato 2.7.9, posso chiamarlo direttamente o link simbolico da dove voglio. (o copiarlo in un virtualenv ecc.)
E nota che sono arrivato qui da una situazione in cui ricevevo avvisi di piattaforma non sicuri e avvisi SNI mancanti. Che mi ha portato qui . Immagino che molte persone stiano trovando questa domanda attraverso lo stesso percorso. E se è per questo che sei qui, questo frammento potrebbe essere utile anche a te
pip install urllib3[secure]
virtualenv
. Il motivo per cui ritengo che sia meglio, è che non si basa su applicazioni o repository di terze parti che potrebbero danneggiare qualcos'altro.
Ecco il nuovo repository di terze parti aggiornato:
sudo add-apt-repository ppa:jonathonf/python-2.7
sudo apt-get update
sudo apt-get install python2.7
python --version
La versione che desideri è già in Ubuntu, in Vivid (pre) release. Se sei coraggioso, puoi mescolare le versioni e installare la versione di Python di Vivid sotto Trusty. Di seguito è una soluzione generica che funziona su alcuni pacchetti, non posso garantirlo con Python. Le probabilità sono ~ 50/50 di riuscire. Se tuttavia trovi un repository di backport adeguato per 14.04 con la versione del pacchetto richiesta, allora dovrebbe essere una scelta migliore.
Hai una "... linea principale fidata" nella tua /etc/apt/sources.list
, copiarla due volte, cambiando "fidata" in "utopica" e "vivida".
Corri apt-get update
e poi apt-get -t vivid install python2.7
. Rivedere le dipendenze installate prima di procedere. Annullare l'aggiornamento quando si sospetta un danno al sistema (pacchetti importanti eliminati, ecc.).
Rimuovi o hash le due linee da /etc/apt/sources.list
.
Non farlo mai su macchine di produzione. Eseguire un backup del sistema operativo e preparare il supporto di avvio per ripristinarlo, se necessario. Aspettati problemi con gli aggiornamenti. Sei stato avvisato.