기본 콘텐츠로 건너뛰기

[CentOS 8] Python 2/3 설치하기

How to install Python2 and Python3 to CentOS 8

Python은 셰계에서 가장 인기있는 프로그래밍 언어 중의 하나로 간단히 배우기 쉬운 구문을 가진기 때문에 초보자나 숙달된 개발자들에게 인기가 많다.

다른 Linux 배포판들과는 달리 CentOS 8에는 기본적으로 설치되저 있지 않기 때문에 추가 설치를 해줘야 하며, Python2 / Python3 로 양분된 버전이 존재한다. 이중에 Python 2는 2020년에 지원이 종료될 것이기 때문에 앞으로는 Python 3를 사용하는 것이 좋다.

RHEL (Red Hat Enterprise Linux) 와 CentOS 8에는 사용자를 특정 버전 Python으로 한정되지 않도록 하는 unversioned system-wide python Command가 없다. 대신에 사용자가 특정한 Python 버전을 설치 및 구성과 실행할 수 있는 옵션을 제공한다.

참고

CentOS 8에서는 yum 패키지 관리자 대신 dnf 패키지 관리자가 탑재되어 있다. 그러나 현재는 두 개 모두 사용이 가능하다. 단, 이 문서에는 dnf 를 사용하는 것으로 한다.

Install Python 3 on CentOS 8

아래의 명령으로 Python 3 버전을 설치한다. (pip 도 같이 설치가 된다)

$ sudo dnf install -y python3

아래의 명령으로 설치된 버전을 확인한다.

$ python3 --version

python은 python3로, pip는 pip3 로 명시적인 버전을 지정해야 한다. 그리고 pip는 가상환경 내에서만 사용해야 한다. Python Virtual Environment를 사용하면 Python 모듈을 글로벌하게 설치하는 것이 아니라 특정한 프로젝트의 격리된 위치에 설치할 수 있게 된다. 이를 통해 다른 Python 프로젝트 간의 영향을 걱정할 필요가 없다.

Install Python 2 on CentOS 8

아래의 명령으로 Python 2 버전을 설치한다. (pip 도 같이 설치가 된다)

$ sudo dnf install -y python2

아래의 명령으로 설치된 버전을 확인한다.

$ python2 --version

python은 python2로, pip는 pip2 로 명시적인 버전을 지정해야 한다.

Set Default Python Version (Unversioned Python Command)

시스템 경로에서 python 명령을 찾을 것으로 예상되는 애플리케이션을 가지고 작업을 해야 하는 경우는 Unversioned system-wide python command를 생성하고 기본 버전을 지정해 줘야 한다.

alternatives 유틸리티를 이용해서 다음의 명령으로 Python3를 지정할 수 있다.

$ sudo alternatives --set python /usr/bin/python3

Python2를 지정할 수도 있다.

$ sudo alternatives --set python /usr/bin/python2

alternatives 명령은 지정한 python 버전을 가르키는 symlink인 python을 생성한다.

따라서 python --version 명령을 사용하면 지정된 실제 Pythone 버전을 출력하게 된다.

다른 버전을 사용해야 할 경우는 위의 명령과 같이 다시 한번 실행하면 되고, 만일 이를 삭제할 경우는 아래의 명령으로 python symlink를 삭제하면 된다.

$ sudo alternatives --auto python

댓글