본문 바로가기
개발 환경/Setting&Tip

[PowerShell] Error: 이 시스템에서 스크립트를 실행할 수 없으므로 ...

by oyeahhh 2020. 12. 24.

발생

예전부터 VS Code의 powershell에서 스크립트 실행시 동작하지 않았다.
그냥 저냥 Git Bash를 사용하며 어떻게 다른 방법으로 해결하고 지나갔는데
eslint --init을 진행할 수 없어서 (git bash 는 대화형을 지원하지 않는다)
powershell로 진행하려다 문제가 발생했고 겸사 겸사 해결했다.

Error

이 시스템에서 스크립트를 실행할 수 없으므로 ... 파일을 로드할 수 없습니다. 자세한 내용은 about_Execution_Policies(https://go.microsoft.com/fwlink/?LinkID=135170)를 참조하십시오.

+ CategoryInfo          : 보안 오류: (:) [], PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess

원인

  • PowerShell의 실행 정책은 PowerShell에서 구성 파일을 로드하고 스크립트를 실행 하는 조건을 제어 하는 안전 기능
  • Restricted: 기본값, Windows 클라이언트의 대해 제한됨
  • RemoteSigned: 로컬 스크립트 및 원격 서명 된 스크립트 허용 (스크립트를 실행할 수 있다)

기본적으로 PowerShell에서 스크립트를 실행할 수 없도록 정책이 되어 있다. (Restricted)
실행 정책을 RemoteSigned로 변경하면 된다.

해결

$ Get-ExecutionPolicy
Restricted

$ Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
실행 규칙 변경
실행 정책은 신뢰하지 않는 스크립트로부터 사용자를 보호합니다. 실행 정책을 변경하면 about_Execution_Policies 도움말
항목(https://go.microsoft.com/fwlink/?LinkID=135170)에 설명된 보안 위험에 노출될 수 있습니다. 실행 정책을
변경하시겠습니까?
[Y] 예(Y)  [A] 모두 예(A)  [N] 아니요(N)  [L] 모두 아니요(L)  [S] 일시 중단(S)  [?] 도움말 (기본값은 "N"):

출처

댓글