본문 바로가기
개발자의 삶/Visual Studio Code(VSCode)

[VSCode+PowerShell] ng : 이 시스템에서 스크립트를 실행할 수 없으므로 C:\Users\사용자\AppData\Roaming\n

by 나.R.D.(Rule Destoryer) 2021. 1. 2.
들어가기 전
지난 번엔 vscode로 vuejs 공부하다가 막혔는데, 노트북 포맷하니 머리도 포맷되서 이번엔 angular 시작하려니 다시 막혀서 남겨놓게 되었다.

 

문제의 시작
PS C:\Development\workspace\angular-study> ng
ng : 이 시스템에서 스크립트를 실행할 수 없으므로 C:\Users\SeoDaeYA\AppData\Roaming\npm\ng.ps1 파일을 로드할 수 없습니다. 자세한 내용은 about_Execution_Policies(https://go.microsoft.com/fwlink/?LinkID=135170)를 참조하십시오.
위치 줄:1 문자:1
+ ng
+ ~~
    + CategoryInfo          : 보안 오류: (:) [], PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess

 

원인

window에서 script 실행 시, 보안상으로 관리자 권한이 아닌 사용자에게는 제한된다.
 

해결방법
Set-ExecutionPolicy remoteSigned

 

이 부분은 꼭 확인하고 갑시다.
  • RemoteSigned
    • 인터넷에서 다운로드 한 모든 스크립트와 구성 파일은 신뢰할 수있는 게시자가 서명해야합니다. Windows 서버 컴퓨터에 대한 기본 실행 정책입니다.
  • Unrestricted
    • PowerShell 6.0부터는 Windows가 아닌 컴퓨터에 대한 기본 실행 정책이며 변경할 수 없습니다. 모든 구성 파일을로드하고 모든 스크립트를 실행합니다. 인터넷에서 다운로드 한 서명되지 않은 스크립트를 실행하는 경우 실행하기 전에 권한을 묻는 메시지가 표시됩니다.
가장 베스트는 관리자 권한으로 실행하여 실행하고자하는 스크립트만 실행하는 것이 좋겠지만, 적당한 선에서 보안지켜가며, 할 수 있는 권한은 "RemoteSigned"가 아닌가 싶다.

 

참고

docs.microsoft.com/en-us/powershell/module/microsoft.powershell.security/set-executionpolicy?view=powershell-7.1

Set-ExecutionPolicy (Microsoft.PowerShell.Security) - PowerShell

The Set-ExecutionPolicy cmdlet changes PowerShell execution policies for Windows computers. For more information, see about_Execution_Policies. Beginning in PowerShell 6.0 for non-Windows computers, the default execution policy is Unrestricted and can't be

docs.microsoft.com

반응형

댓글