[개발 환경 설정] Mac에서 nvm 재정비 & Node 환경변수 재설정

헤이안나·2025년 5월 14일
0

기존에는 Homebrew로 node@20을 설치해서 문제없이 사용하고 있었다.
하지만 nvm으로 Node.js 버전 관리를 시도하면서 nvm 명령어가 인식되지 않아,
환경변수를 점검하던 중 .zshr 등 오타 설정, 경로 꼬임 등을 발견했고,
이참에 Homebrew 기반 Node 환경을 완전히 제거하고 nvm 기반으로 환경을 재정비 및 Node.js를 재설치하는 전체 과정을 정리한 기록이다.


✅ 0. 현재 상태 점검

nvm -v                        # nvm이 인식되는지 확인
which node                    # node 실행 경로 확인
ls -l $(which node)           # node 경로가 실제 어디를 가리키는지 확인
node -v                       # 현재 Node 버전 확인
echo $PATH | grep node@20     # PATH에 node@20 관련 경로가 있는지 확인
brew list | grep node         # Homebrew로 설치된 node 관련 목록 확인

✅ 1. 기존 Node.js 삭제 및 경로 정리

brew uninstall --ignore-dependencies node@20
brew uninstall node
brew uninstall --ignore-dependencies npm
brew cleanup
rm -rf /opt/homebrew/opt/node@20         # 수동으로 남아있는 경로 제거

.zshrc에 아래 줄이 있다면 삭제:

export PATH="/opt/homebrew/opt/node@20/bin:$PATH"

오타로 .zshr 등에 입력한 경우 삭제:

rm ~/.zshr

✅ 2. 기존 설정 백업 및 환경변수 점검

cp ~/.zshrc ~/.zshrc.backup              # .zshrc 백업
cp ~/.zshenv ~/.zshenv.backup            # (없다면 무시해도 됨)
cat ~/.zshrc                             # 기존 설정 확인

✅ 3. nvm 설치 (Homebrew)

brew install nvm                        # 설치되어 있어 따로 설치하지는 않음

✅ 4. .zshrc에 nvm 환경변수 설정

터미널에서 아래 입력

vim ~/.zshrc

추가할 내용:

export NVM_DIR="$HOME/.nvm"
[ -s "$(brew --prefix nvm)/nvm.sh" ] && \. "$(brew --prefix nvm)/nvm.sh"
export PATH="/opt/homebrew/bin:$PATH"

i 눌러 입력 모드 진입
위 내용 붙여넣기
esc → :wq → 엔터로 저장 및 종료

설정 적용:

source ~/.zshrc

✅ 5. PATH 확인 및 node@20 흔적 제거

.zshrc 말고 .zprofile, .zshenv, .bash_profile 같은 다른 파일에도 추가된 적이 있다면 여전히 살아 있을 수 있어

확인 명령어:
grep node@20 ~/.*

→ 이걸 입력하면 ~/.zprofile, ~/.zshenv, ~/.bash_profile 등 숨김 설정 파일 중 node@20이 들어간 줄을 포함한 파일이 나와

해결 방법 : 문제의 .zshr 파일 삭제
rm ~/.zshr
(※ 절대 .zshrc랑 혼동하지 마! zshr임)
현재 적용된 PATH 재확인
echo $PATH | grep node@20
→ 아무것도 안 나오면 완.벽.정.리.
만약 경로가 살아 있다면, 아래 명력어 입력
export PATH=$(echo "$PATH" | tr ':' '\n' | grep -v "node@20" | paste -sd: -)
cat ~/.zshrc 입력
export PATH=/opt/homebrew/bin:$PATH
export PATH="/opt/homebrew/opt/node@20/bin:$PATH" << 삭제
vim ~/.zshrc 열어서 삭제
키보드에서 j 또는 방향키로 해당 줄로 이동
해당 줄에 커서가 올라가면, dd 눌러서 한 줄 삭제
키보드에서 :wq 입력 후 엔터 → 저장 & 종료
추가 점검:
cat ~/.zprofile
brew unlink node@20
ls -l /opt/homebrew/opt/node@20
source ~/.zshrc
exec zsh
cat /etc/zshrc
ls /etc/paths.d/
cat ~/.zshenv
ls -l $(which node)

불필요한 node@20 경로가 남아있지 않은지 확인

✅ 6. nvm으로 Node.js 설치 및 기본 버전 설정

nvm --version
nvm install --lts
nvm use --lts
nvm alias default 'lts/*'
nvm use default

✅ 7. 최종 확인

node -v
npm -v
which node
nvm ls

출력 경로가 ~/.nvm/versions/... 이라면 nvm 환경 적용 완료 ✅

📌 보너스: 프로젝트별 Node 버전 고정 (.nvmrc)

echo "22.15.0" > .nvmrc

✅ 정리 체크리스트

  • Homebrew로 설치한 Node 완전 삭제
  • nvm 설치 및 .zshrc 설정
  • Node LTS 재설치 (v22.15.0)
  • nvm use 및 기본값 지정
  • PATH에서 node@20 흔적 제거
  • 정상 작동 확인 (node -v, which node)

이 과정을 통해 Mac에서 Node.js 환경을
충돌 없이, 버전 관리도 가능한 상태로 깔끔하게 정리 완료!

profile
리액트 공부하는 사람

0개의 댓글