기존에는 Homebrew로 node@20
을 설치해서 문제없이 사용하고 있었다.
하지만 nvm
으로 Node.js 버전 관리를 시도하면서 nvm
명령어가 인식되지 않아,
환경변수를 점검하던 중 .zshr
등 오타 설정, 경로 꼬임 등을 발견했고,
이참에 Homebrew 기반 Node 환경을 완전히 제거하고 nvm
기반으로 환경을 재정비 및 Node.js를 재설치하는 전체 과정을 정리한 기록이다.
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 관련 목록 확인
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
cp ~/.zshrc ~/.zshrc.backup # .zshrc 백업
cp ~/.zshenv ~/.zshenv.backup # (없다면 무시해도 됨)
cat ~/.zshrc # 기존 설정 확인
brew install 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
.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 경로가 남아있지 않은지 확인
nvm --version
nvm install --lts
nvm use --lts
nvm alias default 'lts/*'
nvm use default
node -v
npm -v
which node
nvm ls
출력 경로가 ~/.nvm/versions/... 이라면 nvm 환경 적용 완료 ✅
echo "22.15.0" > .nvmrc
.zshrc
설정v22.15.0
)nvm use
및 기본값 지정node -v
, which node
)이 과정을 통해 Mac에서 Node.js 환경을
충돌 없이, 버전 관리도 가능한 상태로 깔끔하게 정리 완료!