🔥 Vamos/FrontEnd

nodemon설치하며 실행권한 풀어주기

unikue 2024. 7. 28. 01:40

node.js 사용하면서 nodemon을 설치하려하는데 설치가 잘 된 것처럼 보였음에도 불구하고, 두가지 오류를 맞딱뜨렸다.

 

1. nodemon을 전역적으로 사용 할 수 있도록 설치 필요

nodemon : 'nodemon' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. 이름이 정확한지 확인하고 경로가 포함된 경우 경로가 올바른지 검증한 다음 다시 시도
하십시오.
위치 줄:1 문자:1
+ nodemon app.js
+ ~~~~~~~
    + CategoryInfo          : ObjectNotFound: (nodemon:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

 

이 에러 메시지는 nodemon이 시스템에서 인식되지 않는다는 것을 의미합니다. 이는 nodemon이 전역으로 설치되지 않았거나, PATH에 추가되지 않았기 때문일 수 있습니다. 이를 해결하기 위한 몇 가지 방법을 소개합니다.

  1. nodemon을 전역으로 설치하기:
    npm install -g nodemon
    전역 설치가 완료되면 nodemon --version 명령어를 실행하여 제대로 설치되었는지 확인할 수 있습니다.
  2. 전역으로 nodemon을 설치하면 어느 위치에서든 nodemon 명령어를 사용할 수 있습니다. 다음 명령어를 실행하여 전역 설치를 시도해보세요:
  3. npx를 사용하여 nodemon 실행하기:
    npx nodemon app.js
  4. 전역 설치 없이 npx 명령어를 사용하여 프로젝트 내에서 nodemon을 실행할 수 있습니다. 다음과 같이 실행해보세요:

 

 

2. 전역적으로 다운받고 버전도 확인하고! 실행했는데 이젠 보안 오류가 나왔다.

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

 

 

node 처음써서 뭐가 뭔지도 모르는데 이건 더 모르겠으니 지피티 소환.

👉 찾아보니 외부 스크립트가 들어오는걸 파워쉘에서 막고있으므로, 설정을 해주어야 npm 관련 라이브러리들을 쓸 수 있다고 한다

 

 

이 에러는 PowerShell의 실행 정책이 스크립트 실행을 허용하지 않기 때문에 발생합니다. 이를 해결하기 위해서는 PowerShell의 실행 정책을 변경해야 합니다. 그러나, 실행 정책을 변경하기 전에 잠재적인 보안 위험을 이해하고 있어야 합니다.

PowerShell의 실행 정책을 변경하려면 다음 단계를 따르세요:

  1. 관리자 권한으로 PowerShell 실행:
    • "Windows PowerShell"을 검색하고, "관리자 권한으로 실행"을 선택합니다.
  2. 실행 정책 변경: 관리자 권한의 PowerShell에서 다음 명령어를 실행합니다.이 명령어는 사용자의 현재 프로필에 대해 원격 서명된 스크립트의 실행을 허용합니다. 이렇게 하면 로컬에서 만든 스크립트는 실행할 수 있고, 인터넷에서 다운로드한 스크립트는 서명된 경우에만 실행할 수 있습니다.
  3. powershell
    Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
  4. 변경 확인: 정책이 변경되었는지 확인하려면 다음 명령어를 사용하세요.Scope가 CurrentUser인 항목이 RemoteSigned로 설정되었는지 확인합니다.
  5. powershell
    Get-ExecutionPolicy -List