나는 conda create -n <환경명> python=3.6으로 환경을 설치해서 쓰던 도 중 python의 버전이 변경되는 이상한 현상을 겪었다.

물론 내 실수겠거니 싶지만 고치는게 문제였다. python을 지우게 되면 버전이 다 바뀌게되기 때문이다.

그래서 python의 default 설정을 바꿔보도록 하자.

Python경로 확인

우선 내 문제는 conda 가상환경의 python을 default로 잡지 않고 base의 경로를 잡는게 문제였다. 우선 python의 경로를 확인해보자.

python의 경로를 확인하는 방법은 2가지가 있다.

which python3 # linux
where python3 # windows
import sys
sys.executable

python은 환경의 경로 /bin/<python버전>으로 나타난다.

예를들어 python3.8이 설정된 base는 /root/anaconda3/bin/python3.8이다.

GPU환경에서 /root/anaconda3/envs/bin/python3.6에 있어야 할 GPU버전이 base경로로 잡혀있다.

Python경로변경

이제 이 설정을 바꿔보자. 해당 가상환경에 activate 한 뒤 아래와 같이 설정하자.
/.bashrc는 환경설정파일로 일반적으로 약어를 관리할 때 사용한다. 이 bashrc 파일을 수정해보자. vi ~/.bashrc 를 사용하면 편집기가 나타난다.

vi ~/.bashrc

편집기 맨 밑에 아래 명령어를 추가하자. alias 는 별칭으로 python을 입력하면 /root/anacond3/envs/bin/python3.6 에서 실행되게 별칭을 만드는 과정이다.

alias python='/root/anaconda3/envs/bin/python3.6'

bashrc 파일은 바로 반영이 되지 않으므로 source 명령어를 통해 이를 반영해주어야한다. source ~/.bashrc 를 입력한다. 그러면 아래와 같이 python 경로가 제대로 잡히게 된다.  이렇게 jupyter라는 가상환경을 고쳐 보았고 아래와 같이 나타났다.