pm2: command not found 해결법

Chaeyoung·2023년 8월 17일
0
post-thumbnail
post-custom-banner

PM2는 Node.js 애플리케이션을 관리하고 실행하는 프로세스 관리자로 vm환경에서 내가 컴퓨터를 끄더라도 계속 서버가 켜져있게 도와주거나 node를 이용하여 개발을 할때 pm2 log로 에러를 찾기 쉽게 도와준다.
간혹 npm i -g pm2 한 경우에도 whereis pm2한 경우에도 경로를 찾지 못하는 경우가 있다.

pm2 : command not fount 에러해결하기

원인 찾기 및 해결 순서

  • "pm2: command not found" 오류는 PM2(Process Manager 2) 명령어가 시스템 경로에 없을 때 발생하는 오류이다.

먼저 pm2 설치 여부를 확인한다.

  • 우선 PM2가 시스템에 설치되어 있는지 확인해야 한다. 아래 명령어를 사용하여 설치 여부를 확인할 수 있다.
pm2 --version

PM2 설치가 안돼어 있는 경우

  • PM2가 설치되지 않은 경우, 다음 명령어를 사용하여 PM2를 설치한다.
npm install -g pm2
  • -g 플래그는 전역으로 설치하는 것을 의미한다. 따라서 명령어가 관리자 권한이 필요할 수 있다. 만약 관리자 권한이 필요하다면 명령어 앞에 sudo를 붙이면 된다.
sudo npm install -g pm2

시스템 PATH 확인해보기

  • PM2를 설치한 후에도 해당 오류가 발생하면 경로문제를 생각해보자. 시스템 PATH에 Node.js 및 npm의 경로가 제대로 설정되어 있는지 확인하면 된다. PM2는 Node.js 환경에서 실행되기 때문에 Node.js와 npm이 시스템 PATH에 포함되어 있어야 한다.

환경 변수 업데이트

  • 환경 변수를 업데이트하여 Node.js 및 npm의 경로를 추가할 수도 있습니다. 시스템마다 환경 변수 설정 방법이 다를 수 있으므로 해당하는 시스템 가이드를 참조하세요.

재로그인 혹은 재시작

  • 환경 변수나 PATH 설정을 변경한 경우, 새 터미널 세션을 시작하거나 시스템을 재시작하여 변경 사항을 적용해보자.

pm2설치시 시스템 path 확인부터 설정까지

  • 시스템 환경 변수(Path) 설정은 각 운영 체제별로 조금씩 다를 수 있다.
  • Windows,Unix(예: Linux, macOS) 운영 체제

Windows 환경 변수 설정:

  1. 시작 메뉴를 열고 검색 창에 "환경 변수 편집"을 입력하여 "환경 변수 편집" 옵션을 선택
  2. 아래의 "시스템 변수" 섹션에서 "Path" 변수를 선택하고 "편집" 버튼을 클릭.
  3. "새로 만들기" 버튼을 클릭하여 PM2와 Node.js 설치 경로를 추가하기.
  • 예시 :Node.js와 PM2의 기본 설치 경로
- Node.js: `C:\Program Files\nodejs`
- PM2: `C:\Users\<사용자 이름>\AppData\Roaming\npm`
  1. 변경 사항을 저장하고 창을 닫기

  2. 새로운 명령 프롬프트나 터미널 세션을 시작하여 pm2 --version 명령어를 실행해 PM2가 올바르게 인식되는지 확인

Unix (Linux, macOS) 환경 변수 설정:

  1. 터미널을 열고 다음 명령어를 사용하여 사용자 홈 디렉토리의 프로필 파일 열기. 프로필 파일은 대부분 .bashrc, .bash_profile, .zshrc 등으로 돼있다.
nano ~/.zshrc
  1. 파일 내에서 맨 아래 부분에 다음과 같이 Node.js와 PM2 설치 경로를 추가한다.
export PATH="$PATH:/usr/local/bin"  # 기존 PATH에 Node.js와 PM2 경로 추가
  1. Ctrl + O를 눌러 변경사항을 저장하고 Ctrl + X를 눌러 텍스트 편집기를 종료한다.

  2. 터미널 세션을 새로 시작하거나 source ~/.bashrc 명령을 실행하여 변경 사항을 즉시 적용한다

  3. pm2 --version 명령어를 실행하여 PM2가 올바르게 인식되는지 확인해주면 끝!

그래도 해결이 안된다면??

  • 임시로 npx pm2 start로 일단 실행 할 것

pm2 깃허브 보고 해결한 썰 보려면 아래링크로 ㄱㄱ

pm2 경로 문제 어찌저찌 해결한 썰

post-custom-banner

0개의 댓글