Linux CentOS7 Python 2.7.5에서 3.6으로 Version Up하기

python post logo Linux

CentOS 7.x에서는 Python 2.7.x가 기본으로 설치 되어 있는 경우, Python 프로그램을 작성할 때 상위 버전인 Python 3.x가 필요하다면 yum 명령을 사용하여 Python3.x 패키지를 설치해야합니다. 이 글에서는 Python3.6.8가 제공되는 updates 패키지 저장소(Repository)를 사용하여 설치하는 방법을 설명하겠습니다.

작업 환경

이 글은 다음 환경에서 작업했습니다. OS버전이 다르면 명령 또는 명령 실행 결과가 다소 다를 수 있습니다.

$ cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
$ uname -a
Linux centossvr02 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

현재 설치 버전 확인하기

다음 명령으로 현재 설치되어있는 Python의 버전 정보를 확인합니다. (주의) 옵션 -V는 대문자입니다.

$ python -V
Python 2.7.5

패키지 저장소에서 최신 버전 python 확인하기

다음과 같이 기본 패키지 저장소 base, extras, updates 중 updates 패키지 저장소에서 python 3.6.8를 제공하고 있음을 확인할 수 있습니다.

$ yum repolist enabled
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ty1.mirror.newmediaexpress.com
 * extras: ty1.mirror.newmediaexpress.com
 * updates: ty1.mirror.newmediaexpress.com
repo id            repo name           status
base/7/x86_64      CentOS-7 - Base     10,072
extras/7/x86_64    CentOS-7 - Extras      498
updates/7/x86_64   CentOS-7 - Updates   2,552
repolist: 13,122
$ yum list python3
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ty1.mirror.newmediaexpress.com
 * extras: ty1.mirror.newmediaexpress.com
 * updates: ty1.mirror.newmediaexpress.com
Available Packages
python3.i686   3.6.8-18.el7 updates
python3.x86_64 3.6.8-18.el7 updates

python3 설치하기

다음과 같이 최신 버전으로 선택하여 설치합니다. 전체 설치 결과는 여기를 참조하십시오.

$ sudo yum install python3
... 중간 생략 ...

Installed:
  python3.x86_64 0:3.6.8-18.el7

Dependency Installed:
  libtirpc.x86_64 0:0.2.4-0.16.el7
  python3-libs.x86_64 0:3.6.8-18.el7
  python3-pip.noarch 0:9.0.3-8.el7
  python3-setuptools.noarch 0:39.2.0-10.el7

Complete!
$

최신 Version Up & 결과 확인하기

인스톨한 결과를 다음과 같이 확인할 수 있습니다. python3.6을 인스톨한 결과 python2.7과 python3.6이 같이 공존하는 것을 확인할 수 있습니다.

$ ls -l /usr/bin/* | grep python
lrwxrwxrwx. 1 root root         7  7월 10 17:42 /usr/bin/python -> python2
lrwxrwxrwx. 1 root root         9  7월 10 17:42 /usr/bin/python2 -> python2.7
-rwxr-xr-x. 1 root root      7144 10월 14  2020 /usr/bin/python2.7
lrwxrwxrwx. 1 root root         9  8월 10 02:09 /usr/bin/python3 -> python3.6
-rwxr-xr-x. 2 root root     11328 11월 17  2020 /usr/bin/python3.6
-rwxr-xr-x. 2 root root     11328 11월 17  2020 /usr/bin/python3.6m

아직 /user/bin/python이 /user/bin/python2를, /user/bin/python2는 /user/bin/python2.7를 참조하기 때문에 다음과 같은 버전 확인은 이전 버전으로 표시됩니다.

$ python -V
Python 2.7.5

다음 명령으로 /usr/local/bin/python 의 링크 타켓을 python3로 변경합니다. (주의)세션을 끊은 후 다시 로그인해서 접속해야만 내용이 반영됩니다.

$ echo $PATH
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/centos/.local/bin:/home/centos/bin

$ sudo ln -s /usr/bin/python3.6 /usr/local/bin/python

$ ls -la /usr/local/bin/python
lrwxrwxrwx. 1 root root 18 Nov 19 05:41 /usr/local/bin/python -> /usr/bin/python3.6

$ python -V
Python 3.6.8

Hello World 출력하기

다음과 같이 print (“Hello World”) 내용으로 test.py 파일을 작성해서 python test.py 명령으로 실행합니다.

$ cat test.py
print ("Hello World")

$ python test.py
Hello World

pip를 최신 버전으로 업그레이드

pip업그레이드는 다음과 같습니다.

$ sudo python3.6 -m pip install --upgrade pip

pip에 대해서

python36-pip 설치 결과는 다음과 같습니다.

$ which pip3.6
/usr/local/bin/pip3.6

pip 버전 확인 방법은 다음과 같습니다.

$ python3.6 -m pip -V
pip 20.2.4 from /usr/local/lib/python3.6/site-packages/pip (python 3.6)

$ pip -V
pip 20.2.4 from /usr/local/lib/python3.6/site-packages/pip (python 3.6)

$ pip3 -V
pip 20.2.4 from /usr/local/lib/python3.6/site-packages/pip (python 3.6)

pip에 대한 더 자세한 내용은 다음 글을 참조 하십시오.

눈깨비 정보창고 - 분기탱천
마우스 영역 지정 이미지 캡처를 문자 인식 및 번역하기 버튼 클릭 만으로  을 실행 해 주는 소프트웨어를 작성 했습니다. 자세한 도움말은 여기를 참조 하십시오. 웹 서비스 구축 눈깨비가 본업으로 하고 있는 기술적인 ...
제목과 URL을 복사했습니다