반응형
* Python 2.x + 3.x 동시 설치 및 사용
- Python의 경우 2.x 버전이 특정 시점부터 업데이트 지원이 되지 않고 있으나 기존에 사용하는 프로그램 다수 2.x 버전에 종속되어 있어 함께 사용해야 되는 상황이 존재(특히 나처럼 특정 프로그램 및 특정 라이브러리에 의존적인 사람이라면 겁나 필수적)
* Python 2.x / 3.x 동시 설치 방법
항목 | 내용 |
환경 조건 | - Windows OS (Linux 계는 Test 해보지 않았으나, Windows와 유사 충돌 사항은 없는 것으로 보임) |
사용 방식 | - python 및 pip 명령어 ⇒ 3.x 버전 사용 - python2 및 pip2 명령어 ⇒ 2.x 버전 사용 |
설치 방식 | - Python3는 최신 버전 설치하며 환경 변수 자동 추가하도록 체크 후 적용 - Python2는 최대 지원 버전이었던 2.7.9로 설치 (x86-64 MSI Installer)
|
* 설치 완료 후 세팅 사항
- 2.x 심볼릭 링크 설정 (명령어 형식 변경)
- cmd 창에서 입력
- mklink C:\Windows\python2.exe C:\python27\python.exe
- mklink : 심볼릭 링크를 생성
- C:\Windows\python2.exe : 이 경로에 생성
- C:\python27\python.exe : 기존 파일의 링크
- mklink C:\Windows\python2.exe C:\python27\python.exe
- cmd 창에서 입력
- pip 명령어 분기 (2.x / 3.x)
- 파이썬에서 추가 라이브러리를 설치할 수 있는 pip 명령어도 각 버전별 지정 필요
- 3.x 버전은 초기 설치 시에 먼저 인식되어 pip 입력 시 파이썬 3.x 버전으로 연동되어 사용 가능
- 2.x 버전은 환경 변수에서 pip2를 입력하면 2.x 버전과 연동되어 구동될 수 있게 지정 필요
- 환경 변수 설정 (sysdm.cpl)에서 path 부분에 변수 → 편집
- 새로 만들기 → c:\python27\Scripts 값 추가
- 파이썬에서 추가 라이브러리를 설치할 수 있는 pip 명령어도 각 버전별 지정 필요
- 이후 CMD에서 c:\python27\Scripts 이 경로로 직접 이동
- https://bootstrap.pypa.io/pip/2.7/get-pip.py
- get-pip로 python 2.x의 pip 버전을 최대한 최상 버전으로 업데이트
- 위 소스 코드를 get-pip.py로 받아서 c:\python27\Scripts 경로에 넣어줌
- cmd에서 python2 get-pip.py 명령어를 통해 pip2 업데이트 가능
- python3의 pip는 cmd창에서 pip install —upgrade pip로 진행
* 사용 Test
* Python Library 버전 관리
- 본인만의 익숙한 파이썬 개발 환경이 세팅 된 후, 사용되는 버전, 라이브러리의 유지/관리에 필요한 사항
- 해당 방식을 통해 동일 버전의 파이썬에 동일한 라이브러리 설치하는 형태로 운영도 가능
- Anaconda, Miniconda 등의 프로그램으로 관리하는 방법도 존재
- 여기서는 requirements.txt로 관리
- 기존에 운영하는 시스템에서 pip list 명령어를 통해 사용 라이브러리 들의 버전 확인
- pip list 후, pip freeze > requirements.txt 명령어로 라이브러리 버전 정보 복제 txt 파일 생성
- 신규 시스템에 해당 txt 파일을 두고 pip install -r requirements.txt 로 동일하게 설치 가능
- 단, Python, pip, setuptools 등의 설치 관련 툴의 버전이 동일해야 오류가 없음
- 특정 라이브러리가 다른 라이브러리나 프로그램에 의존하는 Case는 별도 확인 및 처리가 필요 (ex. Visual C++ 특정 버전 이상 요구 or pip install --upgrade setuptools 를 통해 해결 되는 상황 등이 존재할 수 있음)
- 신규 시스템에 해당 txt 파일을 두고 pip install -r requirements.txt 로 동일하게 설치 가능
반응형
'Information Security > Other activities' 카테고리의 다른 글
Unix/Linux 기본 이해 (0) | 2021.03.01 |
---|---|
Cloud Computing 보안 (0) | 2021.02.10 |
e-Discovery (Electronic Discovery) (0) | 2021.02.07 |
IOT 보안 가이드라인 (0) | 2021.02.07 |
개인정보 비식별화 (Privacy De-Identification) (0) | 2021.02.07 |