[Linux-Ubuntu] Python 버전 변경

실험환경: Ubuntu 14.04 & Ubuntu 18.04


Ubuntu Linux에서 Python 버전을 변경하는 방법을 정리하였다. 모든 자료는 출처 1에 기준으로 작성하였다. 가장 먼저 아래 CMD를 실행해서 등록된 Python이 있는지 확인한다.  “//MK”는 주석을 의미하고, “$” 뒤에 있는 CMD는 Terminal에 실행해야 하는 부분이다.

//MK: update-alternatives를 사용해서 변경가능한 Python이 있는지 확인
$ sudo update-alternatives --config python

만약 아래와 같은 에러 메시지가 나오면 등록된 Python이 없다는 의미이다. 

그림 1: Python 버전이 등록 되지 않은 경우

그림1과 같은 에러 메시지가 나올 경우 아래와 CMD를 사용해서 Python을 등록한다. 

//MK: Python 2.7을 1번으로 등록함
$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
//MK: Python 3.6을 2번으로 등록함
$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.6 2
//MK: /usr/bin/python은 Python2.7 또는 Python3.6이 링크되는 위치임

“/usr/bin/python” 은 아마 Link 되는 Python 위치를 의미한다. “/usr/bin/python2.7” 은 Python 2.7 파일의 위치를 의미한다. 만약 Python을 빌드한 경우 다른 위치에 Python 파일이 있을 수 있다. 정확한 Python 설치 위치를 찾아서 설정하면 된다. 마지막에 1, 2의 의미는 순서를 의미한다. 추후에 해당 번호를 사용해서 Python 버전을 변경하게 된다. Python 등록을 완료하면 아래 CMD를 사용해서 사용하고자 하는 Python 버전을 선택하면 된다.

//MK: update-alternatives를 사용해서 변경가능한 Python이 있는지 확인
$ sudo update-alternatives --config python
그림 2: Python 등록된 버전 확인 및 선택

그림 2는 위 CMD를 실행한 화면이다. 앞에서 Python을 등록하면서 선택한 순서에 따라 Python 버전이 표시되는 것을 확인 할 수 있다. 원하는 Python 버전을 선택하면 된다. 저의 경우 2번을 선택했다. 그 후 아래 CMD를 사용해서 Python 버전이 변경된 것을 확인 할 수 있다. 

//MK: Python 버전 확인
$ python -v

update-alternatives 동작 원리는 출처 1에 잘 설명되어 있다. “/usr/bin/python”는 “/etc/alternatives/python”을 Link 해서 사용한다. “/etc/alternatives/python”은 “/usr/bin/python3.6″을 Link 한다. update-alternatives은 “/etc/alternatives/python” 의 파일 Link를 변경해서 버전을 관리하는 것으로 판단된다. 기본적으로 update-alternatives을 사용해서 Python 뿐만 아니라 다른 파일도 버전 관리가 가능하다.


출처

  1. https://codechacha.com/ko/change-python-version/

Leave a Comment