Як я можу оновити Python до 2.7.9 на Ubuntu 14.4?


32

Ubuntu 14.4 поставляється із вбудованим Python 2.7.6, але я хотів би оновити його до 2.7.9 (у мене є функції безпеки, які я хочу).

Це навіть можливо? Якщо так, то як цього можна досягти?


2
Версія для версії python 2.7 завжди буде 2.7.6. Перевірте номер версії дистрибутива та перевірте журнал змін (пакети.ubuntu.com/source/trusty/ python2.7 ), щоб побачити, чи підтримувалися ці оновлення безпеки.
Роджер Шерман

Відповіді:


16

Ви можете використовувати pyenv:

 git clone https://github.com/pyenv/pyenv.git ~/.pyenv
 git clone https://github.com/pyenv/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv

Потім додайте

   #   for PyEnv
  export PYENV_ROOT="$HOME/.pyenv"
  export PATH="$HOME/.pyenv/bin:$PATH"
  export PATH="$HOME/.pyenv/shims:$PATH"
  eval "$(pyenv init -)"

до .bash_profile, тоді ви можете побачити версію python, яку ви хочете встановити або оновити:

pyenv install --list

хочете python 2.7.10? Ви можете спробувати:

 pyenv virtualenv 2.7.10

Сподіваюся, це може вам допомогти.


Для Ubuntu цей блок краще працює в ~ / .bashrc, а не ~ / .bash_profile. Потім виконайте "$ SHELL".
бренда

31

ppa: fkrull / deadsnakes - це остання версія python2.7

sudo add-apt-repository ppa:fkrull/deadsnakes
sudo apt-get update
sudo apt-get upgrade

Він оновить python до 2.7.10


1
випробували в розробці машини (всі 14,04 настільних комп'ютерів), дуже хороша альтернатива.
Йонсі Соліс

Але я виявив, що це не сумісно з моїм додатком.
Як

4
Будьте уважні, що покладання на неофіційний пакет та / або PPA, особливо для чогось такого фундаментального, як Python в Ubuntu, обходить важливі процеси безпеки і може призвести до багатьох проблем. Деякі пакети прямо залежать від офіційних пакетів або версій. Натомість ви, можливо, захочете використовувати virtualenv з більш новою версією python лише для тих програм, які вам потрібні. Дивіться також Оновлення до Python 2.7.9 на Ubuntu 14.04 LTS і складіть власний .deb пакет для розгортання - Renoir Boulanger
nealmcb

Добре. Ти правий. Я відмовився від свого підходу кілька місяців тому.
Як

3
Це дозволить оновити всі ваші пакети.
1616

10

Я не прихильник попередніх відповідей, які пропонують встановити з різних PPA. Ніякої неповаги не передбачалося, але я не знаю людей, які їх побудували, і я не маю уявлення, що там може бути. У будь-якому середовищі, де хтось повинен відповісти фахівцеві з безпеки, ця практика нахмуриться.

Щойно я виявив, що завантаження 2.7.9 з джерела та встановлення його поруч було гарним початком. Ця дивовижна публікація в блозі висвітлювала кроки. (відтворено тут, щоб відповідати правилам переповнення стека)

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

Перевірте, чи працює версія

/usr/local/lib/python2.7.9/bin/python -V
Python 2.7.9

Тепер, коли у мене встановлено 2.7.9, я можу викликати його безпосередньо або посилатись на нього звідки завгодно. (або скопіюйте його у virtualenv тощо)

І зауважте, що я потрапив сюди із ситуації, коли я отримував небезпечні попередження про платформу та застереження про відсутність SNI. Що привело мене сюди . Я думаю, що багато людей знаходять це питання через той самий шлях. І якщо саме тому ви тут, цей фрагмент може бути корисним і вам

pip install urllib3[secure]

Це насправді краща відповідь, особливо якщо ви вже використовуєте virtualenv. Причина, я вважаю, що це краще, це те, що він не покладається на будь-які сторонні додатки чи сховища, які можуть порушити щось інше.
Андре

3

Ось нове оновлене стороннє сховище:

sudo add-apt-repository ppa:jonathonf/python-2.7
sudo apt-get update
sudo apt-get install python2.7
python --version

2

Ви можете зайти на python.org і завантажити компіляцію файлу .tar.gz та встановити її. Для складання вихідного коду вам знадобляться основні інструменти. Я не пам’ятаю, чи вистачить пакету «істотний збір», але спробуйте.


2

Версія, яку ви хочете, вже є в Ubuntu, у Vivid (попередньому) випуску. Якщо ви сміливі, можете змішати релізи та встановити версію Python від Vivid під Trusty. Нижче представлено загальне рішення, яке працює на деяких пакетах, я не можу гарантувати це з Python. Шанси становлять ~ 50/50, що це вдасться. Якщо ви знайдете належне сховище зворотних списків для 14.04 з необхідною версією пакета, тоді це повинен бути кращим вибором.

  1. У вас є рядок "... вірний головний" /etc/apt/sources.list, скопіюйте її двічі, змінивши "вірний" на "утопічний" і "яскравий".

  2. Біжи apt-get updateі тоді apt-get -t vivid install python2.7. Перегляньте залежності, встановлені перед продовженням. Відмовтеся від оновлення, коли ви підозрюєте про будь-яку шкоду вашої системи (видалені важливі пакети тощо).

  3. Вилучіть або заблокуйте два рядки з /etc/apt/sources.list.

Ніколи не робіть цього на виробничих машинах. Зробіть резервну копію вашої ОС та підготуйте завантажувальний носій, щоб відновити її за потреби. Очікуйте проблем з оновленнями. Вас попередили.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.