Ubuntu 14.4에서 Python을 2.7.9로 업그레이드하려면 어떻게해야합니까?


32

Ubuntu 14.4에는 Python 2.7.6이 내장되어 있지만 2.7.9로 업그레이드하고 싶습니다 (원하는 보안 기능이 있음).

가능합니까? 그렇다면 어떻게 이것을 달성 할 수 있습니까?


2
Python 2.7의 업스트림 버전은 항상 2.7.6입니다. 배포 버전 번호를 확인한 다음 변경 로그 ( packages.ubuntu.com/source/trusty/python2.7 )를 확인하여 해당 보안 업데이트가 백 포트되었는지 확인하십시오.
Roger Sherman

답변:


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

파이썬 2.7.10을 원하십니까? 당신은 시도 할 수 있습니다:

 pyenv virtualenv 2.7.10

그것이 당신을 도울 수 있기를 바랍니다.


Ubuntu의 경우 해당 블록은 ~ / .bash_profile보다는 ~ / .bashrc에서 더 잘 작동합니다. 그런 다음 "$ SHELL"을 실행하십시오.
brendan

31

ppa : fkrull / deadsnakespython2.7 의 최신 버전입니다

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

파이썬을 2.7.10으로 업그레이드합니다.


1
개발 시스템 (모든 14.04 데스크톱)에서 시도해 보았습니다. 매우 좋은 대안입니다.
Yonsy Solis

하지만 앱과 호환되지 않는 것으로 나타났습니다.
좋아요

4
비공식 패키지 및 / 또는 PPA, 특히 Ubuntu의 Python과 같은 기본 요소에 의존하는 것은 중요한 보안 프로세스를 우회하고 많은 문제를 일으킬 수 있습니다. 일부 패키지는 공식 패키지 또는 버전에 명시 적으로 의존합니다. 대신 필요한 앱에 최신 버전의 Python과 함께 virtualenv를 사용하는 것이 좋습니다. Ubuntu 14.04 LTS에서 Python 2.7.9로 업그레이드를
-Renoir

좋은. 네 말이 맞아 몇 달 전에 접근 방식을 포기했습니다.
같이

3
모든 패키지 가 업그레이드 됩니다.
mpen

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 (사전) 릴리스에 있습니다. 용감한 경우 릴리스를 혼합하고 Trusty에서 Vivid의 Python 버전을 설치할 수 있습니다. 아래는 일부 패키지에서 작동하는 일반적인 솔루션이므로 Python으로 보증 할 수는 없습니다. 성공할 확률은 ~ 50/50입니다. 그러나 필요한 패키지 버전으로 14.04에 적합한 백 포트 저장소를 찾으면 더 나은 선택이되어야합니다.

  1. 에 '... trusty main'줄이 있고 /etc/apt/sources.list'trusty'를 'utopic'및 'vivid'로 변경하여 두 번 복사하십시오.

  2. 실행 apt-get update다음과 apt-get -t vivid install python2.7. 계속하기 전에 설치된 종속성을 검토하십시오. 시스템 손상이 의심되는 경우 (중요한 패키지 삭제 등) 업그레이드를 중단하십시오.

  3. 에서 두 줄을 제거하거나 해시하십시오 /etc/apt/sources.list.

생산 기계에서는 절대로하지 마십시오. OS를 백업하고 필요한 경우 부트 매체를 준비하여 복원하십시오. 업그레이드에 문제가있을 것으로 예상됩니다. 경고를 받았습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.