일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- oracle db
- 자바스크립트 객체
- oracle
- 보안뉴스 한줄요약
- php
- javascript
- 자바스크립트 jQuery
- 보안뉴스요약
- 자바스크립트 API
- 다크웹
- python
- 카카오프로젝트
- 자바스크립트 prototype
- 자바스크립트 기본 문법
- numpy
- 자바스크립트
- 깃허브
- 카카오프로젝트100
- 보안뉴스 요약
- 오라클
- 자바스크립트 element api
- GIT
- 보안뉴스
- 보안뉴스한줄요약
- 랜섬웨어
- 파이썬
- Oracle SQL
- ES6
- 카카오프로젝트 100
- 자바스크립트 node
- Today
- Total
FU11M00N
[python] 리눅스 에서 파이썬 여러버전 사용하기(업그레이드 or 다운그레이드)Alternatives 활용 본문
[python] 리눅스 에서 파이썬 여러버전 사용하기(업그레이드 or 다운그레이드)Alternatives 활용
호IT 2020. 10. 14. 02:27우분투(Debian) 계열 리눅스를 설치하면 python path가 2.7로 기본 설정이 되어있습니다.
Alternatives를 이용하여 python 버전을 쉽게 번경하고 관리할 수 있습니다.
Alternatives (cf, update-alternatives)란?
심볼릭 링크를 생성, 제거, 관리, 조회할 수 있는 기능을 제공하는 GNU 라이선스의 커맨드 라인 툴. 즉, 심볼릭 링크를 통해서 특정 커맨드에 대해 디폴트 버전 혹은 경로를 정의할 수 있습니다.
파이썬의 기본 실행 위치
$ python -V
Python 2.7.14
$ which python
/usr/bin/python
$ ls -al /usr/bin/python
lrwxrwxrwx 1 root root 24 10월 14 10:28 /usr/bin/python -> /etc/alternatives/python
"python -V" 명령어를 사용하면 현재 사용하고 있는 파이썬의 버전 확인이 가능합니다.
"which python" 명령어를 사용하여 현재 파이썬의 경로를 확인 가능합니다.
"ls -al /usr/bin/python" 명령어를 사용하여 현재 파이썬이 어떤 파일을 가리키고 있는지 확인이 가능합니다.
현재 파이썬의 버전을 확인하면 2.7.17로 설정되어있습니다.
$ ls /usr/bin/ | grep python
dh_python2
dh_python3-ply
ipython3
pybabel-python3
python
python-faraday
python2
python2.7
python3
python3-config
python3-futurize
python3-pasteurize
python3-qr
python3-tor-prompt
python3-wsdump
python3.7
python3.7-config
python3.7m
python3.7m-config
python3.8
python3m
python3m-config
x86_64-linux-gnu-python3-config
x86_64-linux-gnu-python3.7-config
x86_64-linux-gnu-python3.7m-config
x86_64-linux-gnu-python3m-config
또한 "ls /usr/bin/ | grep python" 명령어를 수행하여 현재 설치되어있는 파이썬들을 확인 가능합니다.
Alternative으로 파이썬 버전 관리 및 등록
update-alternatives를 사용하여 다음과 파이썬 버전들을 관리합니다.
현재 코드 블록을 보면 같이"/usr/bin/python" 은 "/usr/bin/python2.7"을 가리키고 있습니다.
만약 파이썬 3.7로 변경하고 싶다면 "/usr/bin/python을 /usr/bin/python3.7"로 가리키게 변경해야 합니다.
먼저 "update-alternatives --config python" 옵션을 사용하여 python 버전을 변경할 수 있습니다.
$sudo update-alternatives --config python
update-alternatives: error: no alternatives for python
만약 "update-alternatives: error: no alternatives for python"이라고 출력된다면 아직 아무것도 등록이 안 된 상태입니다.
"update-alternatives --install [symbolic link path] python [real path] number" 명령어 형식대로 사용하여 파이썬 실행파일을 등록 가능합니다.
$ update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
$ update-alternatives --install /usr/bin/python python /usr/bin/python3.7 2
위와 같은 명령어를 입력하여 파이썬의 2.7 버전과 3.7버전을 등록합니다.
$ sudo update-alternatives --config python
대체 항목 python에 대해 (/usr/bin/python 제공) 2개 선택이 있습니다.
선택 경로 우선순� 상태
------------------------------------------------------------
0 /usr/bin/python3.7 2 자동 모드
* 1 /usr/bin/python2.7 1 수동 모드
2 /usr/bin/python3.7 2 수동 모드
Press <enter> to keep the current choice[*], or type selection number:
그럼 파이썬 2.7버전과 3.7 버전이 올바르게 등록이 되었고 선택란에 0,1,2를 원하는 곳을 골라 자동모드로 변경 가능합니다.
저는 3.7 버전을 선택하겠습니다.
$ python --version
Python 3.7.7
$ ls -al /usr/bin/python
lrwxrwxrwx 1 root root 24 10월 14 10:28 /usr/bin/python -> /etc/alternatives/python
3.7 버전으로 선택 후 파이썬의 버전을 확인해보면 3.7.7로 올바르게 설정되었고
"/usr/bin/python" 파일이 "/etc/alternatives/python" 파일을 가리키게 되었습니다.
'Programming > Python' 카테고리의 다른 글
[Python] 웹 크롤링으로 내 블로그 제목만 출력하기 (0) | 2020.11.06 |
---|---|
[Python] write() byte, str 타입 에러 (0) | 2020.10.17 |
[Python] 파일 입출력 (0) | 2020.10.13 |
[Python] lambda 함수, 재귀함수, 하노이탑 피보나치,팩토리얼 (0) | 2020.10.13 |
[Python] 파이썬으로 구현한 성적처리프로그램 (0) | 2020.10.03 |