python 3.3을 설치 한 후 python 2.7을 어떻게 제거 할 수 있습니까?


19

Ubuntu 12.10에 python 3.3을 성공적으로 설치했습니다. 여러 버전의 파이썬이 필요하지 않기 때문에 기존 파이썬 2.7을 제거하고 싶습니다. 내가 그렇게하려고 할 때

sudo apt-get remove python2.7

우분투는 시스템 종속 구성 요소가 많이 제거 될 것이라고 경고합니다. 정말 무서워 보인다.

따라서 시스템 종속 구성 요소를 제거하지 않고 python 2.7을 제거하는 방법이 있습니까? 아니면 해당 종속자를 python 3.3을 사용하도록 지시 할 수 있습니까?


2
나는 그것을 추천하지 않을 것입니다. 파이썬 버전은 전혀 호환되지 않으므로 올바른 버전이 없으면 오래된 스크립트에 문제가 발생할 수 있습니다.
tikend

python3.3은 python 2.7과 호환되지 않는다고 선언했습니다. 그래서 나는 그것을 유지하는 것이 좋습니다. 충고 감사합니다!
피닉스 바이

답변:


23

당신은 할 수 없습니다.

로부터 우분투 위키 / 파이썬 :

장기 계획 (예 : 14.04)

Python 2를 우주로 옮기고 모든 Python 응용 프로그램을 기본으로 Python 3으로 이식하십시오. 우리는 Python 2.7을 완전히 제거하지는 않지만 Python 2.8도 절대 존재하지 않기 때문에 Python 2.7은 거의 4 살이 될 것입니다. 14.04 LTS 릴리스에서는 이제 Python 2를 유니버스로 배포 할 차례입니다.

이것은 많은 기본 패키지가 2.7에 대한 의존성이 높고 여전히 마이그레이션하는 데 많은 시간이 필요하다는 것을 의미합니다. Python 3에는 이전 버전과 호환되지 않는 많은 변경 사항이 있습니다. 정기적 인 패키지 업그레이드는 아닙니다.

실제로 Python 2.7을 제거하려면 14.04 릴리스를 기다려야하지만 보장 할 수는 없습니다.


3
이제 16.04입니다.
muru

지금 18.04입니다.
Francesco Pasa

19.04 fu #! & now
Genarito

5

당신은 할 수없고, 정말로 원하지 않습니다.

파이썬은 2.7과 3.0 사이에서 급격히 바뀌었고 호환성이 떨어졌습니다. 대량의 시스템 인프라를 지원하는 데 사용되는 2.7 용으로 작성된 Python 스크립트가 반드시 Python 3.x에서 제대로 작동하지는 않습니다. 이러한 스크립트는 새 버전에서 작동하도록 업데이트해야하며, 그 때까지 Python 2.7을 유지해야합니다.

그렇기 때문에 이전 파이썬에 많은 의존성이 있음을 알 수 있습니다. 시스템은 그것에 의존합니다. 게다가, 두 버전의 Python을 동일한 시스템에 설치해도 아무런 해가 없습니다. 그리고 앞으로도 여전히 Python 2.7을 사용하는 애플리케이션을 접할 수 있으므로이를 유지하는 것이 좋습니다.


2

기본적으로 Python3에서 개발하고 실행 후 제거 될 내용을 본 후 OP와 동일한 결론에 도달했기 때문에 2019 년에 여기에 왔습니다. apt purge python

내가 정말 원하는 것을 때문에 단지와 Python3 전화를했다 python, 나는 달렸다

sudo rm /usr/bin/python
sudo ln -s /usr/bin/python3 /usr/bin/python

이런 식으로 Python2.7이 여전히 필요한 경우 기호 링크로 인해 python2.7단순히 호출 python하면 기본값은 Python3 으로 명시 적으로 호출 할 수 있습니다 .

python2.7을 호출하는 bash 수준의 스크립트가 없으므로이 python변경 사항은 중단되지 않습니다. 다른 시스템은 스크립트를 조정해야합니다.

python 명령을 python2에서 python3으로 전환하는 배포의 주요 장벽은 배포 내에서 손상이 아니라 sysadmins 및 다른 사용자가 개발 한 개인 타사 스크립트가 손상된 것입니다.

- 유닉스 계열 시스템에서 "파이썬"명령

이 답변은 OP에 대한 직접적인 응답은 아니지만 비슷한 질문이있는 사람은 2.7을 제거하려고 할 때 찾고 있던 기능입니다. 삭제하기보다는 어느 것을 사용할 것인지 우선 순위를 정하십시오 python.


1
그것은 나쁜 생각으로 저를 공격합니다. Python 2 용으로 작성된 모든 오래된 스크립트는을 호출 /usr/bin/python하지만 Python 3 용으로 작성된 거의 모든 스크립트는 변경 사항을 인식 python3하고 현재 호출 합니다. 분들께 python지점으로하는 것은 python2.7문제를 일으킬 가능성이 적습니다.
vidarlo

python2가 필요하고 3에서 작동하는 스크립트를 만들지 않는다고 말한 것처럼 환경에 따라 다릅니다. 자동 스크립트를 실행하는 작업에서 스테이션 중 하나에서 이와 같이 변경하면 매우 혼란 스럽습니다. .
saniboy

/ usr / bin / python을 호출 할 수있는 특정 시스템 프로세스가 있습니까? 새로운 정보가 제공 될 때 항상 마음이
바뀔 수

나는 18.04에 꽤 많이 있습니다. grep -r "/usr/bin/python" /usr/bin/간단한 개요를 제공해야합니다. 시스템을 비활성화하지는 않지만 작동하지 않을 수 있습니다. 예를 들어 solaar.
vidarlo

1
내가 확인한 시스템에는 python3 또는 python2를 명시 적으로 참조하지 않는 39가 있습니다. 그것들은 아마도 python2 일 것입니다. 이것은 물론 당신이 설치 한 것에 달려 있지만, 이것을 할 큰 이유는 없습니다 ...
vidarlo
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.