본문 바로가기

문돌이 존버/각종 꿀팁 및 해결법

AWS EC2 Linux2 서버 파이썬 버전 변경하기 feat. 설치 X

반응형

저번 글에서 소개드렸듯이, Linux2 서버에 셀레니움을 설치 및 사용중인데 갑자기 파이썬 버전 경고(warning) 메시지를 발견했습니다.

제가 사용하고 있는 boto3 라이브러리가 파이썬 3.7 버전을 2023년 12월 이후로 지원하지 않는다는 것이었는데요. 발견한 김에 파이썬 버전을 업그레이드하자 해서 방법을 살펴봤습니다. 미리 말씀드리면 리눅스 서버에 파이썬 3.8 버전이 이미 있기 때문에 3.8 버전으로 업그레이드했습니다.

리눅스 서버기 때문에 업그레이드 과정이 일반 로컬(윈도우 or 맥)과는 달랐습니다. 일본 블로그 내 한국인 개발자 분이 작성한 글을 참고했습니다(약간의 수정 필요).

먼저, EC2 Linux2 서버에서 파이썬 버전을 확인합니다.

# python -V
python3 -V

참고로 숫자 3이 붙지 않은 python 명령어는 파이썬2 버전을 나타냅니다. 다음은 파이썬을 다운받기 위해 필요한 amazon-liunx-extras 패키지를 확인합니다.

/usr/bin/amazon-linux-extras

이렇게 했을때 뭔가 목록이 여러 개가 나온다면 해당 패키지가 이미 설치된 것입니다. 없다면 아래 명령어로 설치해줍니다.

sudo yum install -y amazon-linux-extras

다음으로 파이썬 3.8 버전을 활성화시킵니다.

# python3.8 패키지 확인
amazon-linux-extras | grep python3.8 
# 44  python3.8                available    [ =stable ]

sudo amazon-linux-extras enable python3.8

이제 파이썬 3.8 버전을 제대로 다운받겠습니다.

sudo yum install python3.8

# 다운로드 확인
ls -l /usr/bin/python3.8

이렇게 다운받았다고 하더라도 바로 파이썬 3.8 버전을 사용할 수 있는 것은 아닙니다. 아래 update-alternatives 명령어를 통해 어떤 버전의 파이썬을 사용할 것인지 등록해야 합니다.

# update-alternatives --install [심볼릭 링크 경로] python3 [파이썬 실제 경로] [우선순위 숫자]
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1

그리고 사용할 파이썬 버전이 잘 설정되었는지 확인합니다.

sudo update-alternatives --config python

# 1 개의 프로그램이 'python'를 제공합니다.

#   선택    명령
# -----------------------------------------------
# *+ 1           /usr/bin/python3.8
#    2           /usr/bin/python2.7

# 현재 선택[+]을 유지하려면 엔터키를 누르고, 아니면 선택 번호를 입력하십시오:

위 안내 메시지처럼 현재 선택 [+]가 파이썬 3.8 버전에 설정되었기 때문에 따로 뭘 해줄 필요는 없습니다. 만약 파이썬 2.7 버전에 [+] 표시가 있다면 1번에 해당하는 숫자 1을 입력하면 됩니다.

마지막으로 파이썬 버전을 확인해주면 끝입니다!

python3 -V

추가로 저는 리눅스 서버에 가상환경을 구축해 파이썬을 활용하는데요. 기존에 3.7 버전에서 가상환경을 생성해서 사용했으니 당연히 가상환경 파이썬 버전도 3.7 이었습니다.

위처럼 파이썬 버전을 3.8로 바꾸고 나서 가상환경 파이썬 버전을 확인해보니 동일하게 3.8로 변경된 것을 확인할 수 있었습니다.

728x90
반응형