[Python] conda init 명령어의 역할

2025. 9. 6. 01:31Languages/Python

반응형

conda에서 `conda activate base` 명령으로 base 디폴트 가상환경을 활성화시킬 때,

 conda activate base

아래의 에러와 함께 해당 가상환경에 활성화되지 않는 경우가 있다.

CondaError: Run 'conda init' before 'conda activate'

에러에서 안내된대로 `conda init` 명령을 실행하면,

conda init

다음 메시지들과 함께 Anaconda 기본 설치 경로에 여러 변경 사항이 적용되는 것을 확인할 수 있다.

no change     C:\Users\sungkukpark\anaconda3\Scripts\conda.exe
no change     C:\Users\sungkukpark\anaconda3\Scripts\conda-env.exe
no change     C:\Users\sungkukpark\anaconda3\Scripts\conda-script.py
no change     C:\Users\sungkukpark\anaconda3\Scripts\conda-env-script.py      
no change     C:\Users\sungkukpark\anaconda3\condabin\conda.bat
no change     C:\Users\sungkukpark\anaconda3\Library\bin\conda.bat
no change     C:\Users\sungkukpark\anaconda3\condabin\_conda_activate.bat     
no change     C:\Users\sungkukpark\anaconda3\condabin\rename_tmp.bat
no change     C:\Users\sungkukpark\anaconda3\condabin\conda_auto_activate.bat 
no change     C:\Users\sungkukpark\anaconda3\condabin\conda_hook.bat
no change     C:\Users\sungkukpark\anaconda3\Scripts\activate.bat
no change     C:\Users\sungkukpark\anaconda3\condabin\activate.bat
no change     C:\Users\sungkukpark\anaconda3\condabin\deactivate.bat
modified      C:\Users\sungkukpark\anaconda3\Scripts\activate
modified      C:\Users\sungkukpark\anaconda3\Scripts\deactivate
sh
modified      C:\Users\sungkukpark\anaconda3\etc\profile.d\conda.csh
modified      C:\Users\sungkukpark\Documents\WindowsPowerShell\profile.ps1
modified      HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun

==> For changes to take effect, close and re-open your current shell. <==

 

Anaconda의 공식 문서를 참조하면, `conda init`의 역할은 쉘 인터렉션을 위해 conda를 초기화하는 것(Initialize conda for shell interaction)이다. 이와 같이 `conda init`은 한 번만 실행해 두면, 이후 터미널을 열었을 때 자동으로 conda가 활성화되고, conda activate <env>를 바로 쓸 수 있게 된다.

`conda init` 명령은 위에서 로그(log)에서 보이는 것처럼 시스템에 직접 변경사항을 만들어 각 쉘에 적합한 conda 초기화 코드를 추가해준다. 만약 구체적으로 어떤 파일들이 변경되었는지 확인하고 싶으면 '--dry-run' 플래그를 넣으면 된다. 더 구체적으로 어떤 부분이 변했는지 보고 싶으면 '--verbose' 플래그를 넣으면 된다. 중요사항으로는 `conda init` 명령을 실행한 뒤에는 대부분의 쉘의 경우 해당 쉘을 닫은 다음 재시작(restart)해야만 `conda init`의 변경사항이 적용되게 된다는 점이 있다.

참고 자료

반응형