모도리는 공부중

[PowerShell] (base) 기본 실행 설정 - PowerShell 실행 정책 바꾸기 본문

내 지식 정리/PYTHON

[PowerShell] (base) 기본 실행 설정 - PowerShell 실행 정책 바꾸기

공부하는 모도리 2021. 7. 13. 15:12
728x90
반응형

윈도우 재설치 후 이것저것 하나씩 설치를 진행하고 있다.

나는 머신러닝이나 딥러닝도 같이 공부할 계획이므로 miniconda가 아닌 anaconda를 설치했다. 그리고 conda 환경변수 설정까지 완료한 상태.

 

[conda사용법] Anaconda 환경변수(path) 설정 및 conda 명령어

Anaconda 환경 변수 Path 설정 Anaconda 홈페이지에 접속해서 설치하고 명령프롬프트(cmd)를 실행해 conda를 사용하려는데 안되니까 여기까지 왔을 것이다. 아무리 conda를 입력해도 내가 원하는 이 화면

studying-modory.tistory.com

이번엔 윈도우 설정할 때 원드라이브 동기화 설정을 안하기로 했으므로 전에 발생했던 외계어 문제는 발생하지 않는게 당연하다.

 

conda 환경 설정을 방해하는 원드라이브(onedrive) 경로 외계어(특수문자) 해결법

conda 환경 변수를 설정하고 가상환경을 불러오고 하는 작업 중에 계속 원드라이브 동기화 문제로 인해 영어가 아닌 외계어가 섞이면서 원치 않는 디렉토리가 생성되거나 하는 등의 문제가 발생

studying-modory.tistory.com

그런데..

 

conda 환경변수 설정 후 base가 기본으로 잡히지 않고 있는 상황.

conda 입력시 사용 가능한 명령어가 보이고 conda init powershell도 했고 conda init도 했는데 안될뿐더러,

conda activate base도 안된다. (되는게 뭐야? - 조금만 기다리라. 밑에 내가 해결한 방법이 있다.)

 

powershell 실행시

Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

새로운 크로스 플랫폼 PowerShell 사용 https://aka.ms/pscore6

. : 이 시스템에서 스크립트를 실행할 수 없으므로 C:\Users\siryu\Documents\WindowsPowerShell\profile.ps1 파일을 로드할 수
 없습니다. 자세한 내용은 about_Execution_Policies(https://go.microsoft.com/fwlink/?LinkID=135170)를 참조하십시오.
위치 줄:1 문자:3
+ . 'C:\Users\siryu\Documents\WindowsPowerShell\profile.ps1'
+   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : 보안 오류: (:) [], PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess

cmd 실행시

Microsoft Windows [Version 10.0.19043.1083]
(c) Microsoft Corporation. All rights reserved.

C:\Users\siryu>conda activate base

CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
If using 'conda activate' from a batch script, change your
invocation to 'CALL conda.bat activate'.

To initialize your shell, run

    $ conda init <SHELL_NAME>

Currently supported shells are:
  - bash
  - cmd.exe
  - fish
  - tcsh
  - xonsh
  - zsh
  - powershell

See 'conda init --help' for more information and options.

IMPORTANT: You may need to close and restart your shell after running 'conda init'.

cmd에서 말한대로 일단 입력해보았고..

C:\Users\siryu>conda init
no change     C:\Users\siryu\anaconda3\Scripts\conda.exe
no change     C:\Users\siryu\anaconda3\Scripts\conda-env.exe
no change     C:\Users\siryu\anaconda3\Scripts\conda-script.py
no change     C:\Users\siryu\anaconda3\Scripts\conda-env-script.py
no change     C:\Users\siryu\anaconda3\condabin\conda.bat
no change     C:\Users\siryu\anaconda3\Library\bin\conda.bat
no change     C:\Users\siryu\anaconda3\condabin\_conda_activate.bat
no change     C:\Users\siryu\anaconda3\condabin\rename_tmp.bat
no change     C:\Users\siryu\anaconda3\condabin\conda_auto_activate.bat
no change     C:\Users\siryu\anaconda3\condabin\conda_hook.bat
no change     C:\Users\siryu\anaconda3\Scripts\activate.bat
no change     C:\Users\siryu\anaconda3\condabin\activate.bat
no change     C:\Users\siryu\anaconda3\condabin\deactivate.bat
no change     C:\Users\siryu\anaconda3\Scripts\activate
no change     C:\Users\siryu\anaconda3\Scripts\deactivate
no change     C:\Users\siryu\anaconda3\etc\profile.d\conda.sh
no change     C:\Users\siryu\anaconda3\etc\fish\conf.d\conda.fish
no change     C:\Users\siryu\anaconda3\shell\condabin\Conda.psm1
no change     C:\Users\siryu\anaconda3\shell\condabin\conda-hook.ps1
no change     C:\Users\siryu\anaconda3\Lib\site-packages\xontrib\conda.xsh
no change     C:\Users\siryu\anaconda3\etc\profile.d\conda.csh
no change     C:\Users\siryu\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. <==

 

애초에 이런 문제가 있다는 것을 알아챈 이유는 가상환경을 만들려고 하는데 생성이 안된다. 그래서 cmd창이나 powershell창을 자세히 보니 자동으로 (base)에 접근해서 입력 가능한 상태를 띄워야하는데 그렇지가 않다.

Powershell이 권하는 사이트를 접속해보았다.

 

실행 정책 정보 - PowerShell

PowerShell 실행 정책에 대해 설명 하 고 관리 하는 방법을 설명 합니다.

docs.microsoft.com

 

사수가 보내준 명령어들이 뭔지도 모르고(... 지나고보니 역시 부끄럽다) 입력했었는데 여기에서 권하는 명령어들이었다는 것을 이제야 깨닫고, 문서를 찬찬히 읽어보면서 유효한 실행정책 확인.

PS C:\Users\siryu> Get-ExecutionPolicy -Scope CurrentUser
Undefined
PS C:\Users\siryu> Get-ExecutionPolicy
Restricted
PS C:\Users\siryu> Get-ExecutionPolicy -List

        Scope ExecutionPolicy
        ----- ---------------
MachinePolicy       Undefined
   UserPolicy       Undefined
      Process       Undefined
  CurrentUser       Undefined
 LocalMachine       Undefined

CurrentUser에 보면 실행정책이 제거된 상태임을 알 수 있다.

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

위의 명령어를 입력하여 모두 예(A)를 선택하고 exit.

 

Powershell을 재실행하면

내가 바라 마지않던 (base)가 드디어 생성되었다.

그리고 드디어 내가 원하던 가상환경 생성과 동시에 python 버전 설치까지 진행이 된다!!

 

이렇게 설정을 끝낸 후 cmd에서도 가상환경 접근이 잘되는지 확인.

잘된다. 잘했다, 모도리. 아이 뿌듯해.

728x90
반응형
Comments