개요
Python 3.6
은 Ubuntu 18.04와 함께 제공되는 기본 버전입니다 이것을 최신 버전으로 Upgrade 해보도록 하겠습니다. 글을 작성하는 현재 최신 버전은 3.9입니다.
현재 설치된 버전 확인
$ python3 --version
Python 3.6.9
패키지 매니저로 설치하기
비록 Ubuntu 18.04의 기본 버전은 아니지만 python 3.7
과 python 3.8
은 다음과 같이 패키지 매니저를 사용하여 손쉽게 설치가 가능합니다.
$ sudo apt update
$ sudo apt install python3.7
$ sudo apt install python3.8
소스코드로 설치하기
가장 최신 버전인 python 3.9
는 현재 Ubuntu 18.04의 패키지 저장소를 통해 제공되지 않기 때문에 직접 소스코드를 이용해 설치해 주어야 합니다.
$ sudo apt update
$ sudo apt upgrade
$ sudo apt dist-upgrade
$ sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget
임시 디렉터리를 생성한 후 python 소스를 다운로드합니다.
$ mkdir ~/tmp
$ cd ~/tmp
$ wget https://www.python.org/ftp/python/3.9.1/Python-3.9.1.tgz
소스코드를 다운로드한 후, 다음 명령을 실행하여 압축을 해제한 후, configure
를 수행합니다.
$ tar -xvzf Python-3.9.1.tgz
$ cd Python-3.9.1
$ ./configure
다음 명령을 사용하여 python을 설치합니다. 이때 시스템의 python을 덮어쓰지 않도록 altinstall
을 사용합니다.
$ sudo make altinstall
python 3.9
가 제대로 설치되었는지 확인합니다.
$ python3.9 --version
Python 3.9.1
python
명령어로 python3
실행하기
~/.bashrc
또는 ~/.bash_aliases
파일에 아래의 내용을 추가합니다.
alias python=python3
alias pip=pip3
그리고 이를 적용하기 위해 source ~/.bashrc
또는 source ~/.bash_aliases
를 실행합니다.
$ python --version
Python 3.6.9
동일한 방법으로 사용하고자 하는 버전을 선택하면 됩니다. python3.7
, python3.8
, python3.9
등
여러 Python3 버전을 선택하여 실행하기
※ Ubuntu 18.04 에서 사용시 오류가 있어 사용하길 권장하지 않습니다.
시스템의 기본 버전이 아닌 python3을 기본값으로 설정 하겠습니다.
3.6 버전을 설정합니다.
$ sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 1
update-alternatives: using /usr/bin/python3.6 to provide /usr/bin/python3 (python3) in auto mode
$ python --version
Python 3.6.9
3.7 버전을 추가합니다.
$ sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.7 2
update-alternatives: using /usr/bin/python3.7 to provide /usr/bin/python3 (python3) in auto mode
$ python --version
Python 3.7.5
3.8 버전도 추가합니다.
$ sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 3
update-alternatives: using /usr/bin/python3.8 to provide /usr/bin/python3 (python3) in auto mode
$ python --version
Python 3.8.0
3.9 버전도 추가합니다. (소스에서 설치하여 경로가 다릅니다.)
$ sudo update-alternatives --install /usr/bin/python3 python3 /usr/local/bin/python3.9 4
update-alternatives: using /usr/local/bin/python3.9 to provide /usr/bin/python3 (python3) in auto mode
Python 3.9.1
명령어 뒤에 붙인 숫자 1
, 2
, 3
, 4
는 우선순위입니다. (클수록 우선순위가 높습니다.) 즉, auto mode에서는 숫자가 가장 높은 python3.9
를 사용하도록 설정하였습니다.
다른 버전을 사용하고자 할 경우, 다음 명령을 통해 변경합니다.
$ sudo update-alternatives --config python3
There are 4 choices for the alternative python3 (providing /usr/bin/python3).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/local/bin/python3.9 4 auto mode
1 /usr/bin/python3.6 1 manual mode
2 /usr/bin/python3.7 2 manual mode
3 /usr/bin/python3.8 3 manual mode
4 /usr/local/bin/python3.9 4 manual mode
Press <enter> to keep the current choice[*], or type selection number: 3
update-alternatives: using /usr/bin/python3.8 to provide /usr/bin/python3 (python3) in manual mode
$ python --version
Python 3.8.0
다시 auto mode로 돌아가려면 다음 명령을 실행합니다.
$ sudo update-alternatives --auto python3
update-alternatives: using /usr/local/bin/python3.9 to provide /usr/bin/python3 (python3) in auto mode
$ python --version
Python 3.9.1
보충
update-alternatives사용시 sudo apt update
를 사용하면 오류가 발생합니다. 이 때는 ubuntu 18.04 시스템의 기본 버전인 python 3.6
으로 선택 후 사용하면 됩니다.
참고
'운영체제' 카테고리의 다른 글
[linux] 부팅가능 USB 드라이브 만들기 (0) | 2021.02.28 |
---|---|
[WSL] 우분투 18.04를 20.04로 업그레이드 하기 (0) | 2020.12.15 |
[WSL] chmod 미작동 조치 (0) | 2020.10.27 |
WSL에 Node.js 개발 환경 설치 (0) | 2020.07.01 |
NVM으로 WSL에 Node.js 설치시 권한 오류 (0) | 2020.05.24 |