ОС

Как полностью удалить и заново установить Node.js на Mac

Пошаговое руководство по полному удалению Node.js, npm и NVM на Mac OS X: очистка остатков, устранение конфликтов версий и установка свежей LTS-версии через NVM.

Как полностью удалить Node.js и установить его с нуля на Mac OS X?

Я столкнулся с постоянной проблемой, когда моя версия Node.js остается v0.6.1-pre, несмотря на попытки обновить ее с помощью Homebrew и NVM. Когда я проверяю версию Node с помощью node -v, она показывает v0.6.1-pre. Однако в том же сеанс терминала NVM показывает, что установлена v0.6.19.

После перезапуска bash-терминала NVM показывает:

nvm ls
v0.6.19
current: v0.6.1-pre
default -> 0.6.19 (-> v0.6.19)

Я уже попробовал следующие шаги по устранению неполадок:

  • Использование Homebrew для обновления и установки Node (brew update и brew install node)
  • Удаление директории “node” в /usr/local/include
  • Удаление директорий “node” и “node_modules” в /usr/local/lib
  • Следование инструкциям по удалению и переустановке npm

Несмотря на эти попытки, версия Node остается устаревшей, и я не могу установить библиотеки, такие как “zipstream”, которые требуют более новую версию.

В идеале я бы хотел полностью удалить Node.js, npm и NVM, а затем установить весь стек с нуля на моей системе. Как достичь этой чистой установки?

Чтобы полностью удалить Node.js, npm и NVM на Mac OS X и установить чистую версию с нуля, начните с проверки путей установки командой which node, затем удалите все остатки вручную — директории в /usr/local/, ~/.nvm и профили оболочки вроде .zshrc или .bash_profile. После перезагрузки терминала установите свежий NVM через официальный скрипт и Node.js LTS-версию командой nvm install --lts — это решит конфликты вроде вашей v0.6.1-pre, которая цепляется из системных бинарников.


Содержание


Почему Node.js “застревает” на старой версии на Mac

Вы не одиноки с этой бедой — v0.6.1-pre из 2012 года? Это классика. На Mac OS X (теперь macOS) Node.js часто “застревает” из-за нескольких установок: старая через pkg-инсталлер в /usr/local/bin, Homebrew в /opt/homebrew/ (на Apple Silicon) или NVM в домашней папке. Команда node -v тянет первую в PATH, игнорируя NVM. А nvm ls показывает свои версии, но они не активны. Плюс, bash/zsh профили накапливают строки вроде source ~/.nvm/nvm.sh, которые мешают. В 2026 году актуальная LTS — v20.x или v22.x, но без чистки вы не обновитесь.

Решение простое, но радикальное: сотрите всё дотла. Это займёт 15-30 минут, зато потом никаких конфликтов.


Шаг 1: Определите метод установки Node.js

Сначала разберитесь, откуда растут ноги. Откройте Terminal ( Spotlight → Terminal ) и введите:

which node
which npm
which nvm
whereis node
  • Если /usr/local/bin/node — это pkg или старая Homebrew.
  • /opt/homebrew/bin/node — новая Homebrew на M1/M2/M3.
  • ~/.nvm/versions/node/... — NVM.
  • command not found — уже частично чисто.

Запишите вывод. Для вашей проблемы, судя по v0.6.1-pre, это /usr/local/bin. Ещё проверьте echo $PATH — первые пути в приоритете.

Подробно о путях установки объясняют, почему именно эти директории.


Шаг 2: Полностью удалите NVM

NVM — частый виновник. Удалите его целиком:

  1. nvm deactivate (если активна версия).
  2. rm -rf ~/.nvm — сотрёт все версии Node внутри.
  3. Откройте профили: nano ~/.zshrc (или ~/.bash_profile для старого bash).
  4. Удалите строки:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
[ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion"
  1. Сохраните (Ctrl+O, Enter, Ctrl+X) и source ~/.zshrc.

Перезапустите Terminal. Теперь nvm --version должен выдать command not found.

Без этого NVM будет пытаться загрузиться и путаться с системным Node. Sky.pro рекомендуют именно такой подход для полной чистки.


Шаг 3: Удалите Node.js через Homebrew или pkg

Если brew list | grep node показывает пакет:

brew uninstall --force node
brew cleanup

Для pkg-установки (ваш случай, судя по v0.6):

sudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*

Если Homebrew на Apple Silicon: проверьте /opt/homebrew/bin/node и удалите аналогично.

Не забудьте sudo rm — права root нужны для /usr/local. Введите пароль.

Stack Overflow собрали эти команды годами обсуждений — работают на Ventura/Sonoma/Sequoia.


Шаг 4: Очистите все остаточные файлы {#cleanup-files)

Это ключевой шаг, который многие пропускают. Выполните все эти команды по порядку (скопируйте в скрипт для удобства):

sudo rm -rf /usr/local/bin/{node,npm,npx}
sudo rm -rf /usr/local/bin/../lib/node_modules/*
sudo rm -rf /usr/local/include/node
sudo rm -rf /usr/local/lib/dtrace/node.d
sudo rm -rf ~/.npm ~/.nvm ~/.npmrc ~/.node-gyp ~/.node_repl_history
sudo rm -rf /usr/local/share/man/man1/node*
sudo rm -rf /usr/local/share/systemtap/tapset/node.stp
sudo rm -rf ~/Library/Caches/node*

# Для полной паранойи
sudo find /usr/local -name "*node*" -type d | xargs sudo rm -rf
sudo find /usr/local -name "*npm*" -type d | xargs sudo rm -rf

Затем hash -r (очистка кэша bash) и перезагрузите Mac — это смахнёт кэшированные бинарники.

GitHub Gist — это сборник именно таких команд, проверенный тысячами.

Но что если боитесь rm? Сделайте бэкап: sudo tar -czf ~/node-backup.tar.gz /usr/local/bin/node* перед удалением.


Шаг 5: Проверьте полное удаление

После чистки:

node -v
npm -v
nvm --version

Все должны: command not found. Если нет — повторите which node и удалите вручную.

ls /usr/local/bin | grep node — пусто. echo $PATH без NVM-строк.

Если ок, идём к установке. Перезапуск системы обязателен — macOS кэширует пути.


Шаг 6: Установите NVM заново

NVM — лучший выбор для Mac в 2026: переключает версии без конфликтов.

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash

Или wget: wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash.

Перезапустите Terminal, проверьте nvm --version.

VC.ru хвалят этот метод — простой и надёжный.


Шаг 7: Установите свежий Node.js

nvm install --lts # LTS, например v20.17.0 на 2026-01-15
nvm use --lts
nvm alias default node # по умолчанию LTS

Затем глобальные пакеты: npm install -g npm@latest (обновит npm).

Установите zipstream: npm i zipstream — должно сработать без ошибок компиляции.

Для нескольких версий: nvm install 18 или nvm install node (latest).

ReactGo подтверждают: NVM решает 99% проблем с версиями.


Шаг 8: Финальная проверка и советы

node -v # v20.x.x
npm -v # 10.x.x
nvm current

Создайте проект: mkdir test && cd test && npm init -y && npm i express — если ок, вы в деле.

Советы:

  • Используйте zsh (по умолчанию с Catalina+).
  • На M-series: Homebrew в /opt/homebrew.
  • Проблемы с правами? nvm install --lts ставит в ~/, без sudo.
  • Альтернатива: fnm или asdf вместо NVM, если лень.

Если zipstream всё равно ругается — обновите Xcode Command Line Tools: xcode-select --install.


Источники

  1. Sky.pro: Полное удаление и переустановка Node.js на Mac OS X
  2. VC.ru: Лучший путь переустановки Node.js на Mac
  3. Nektony: Uninstall Node on Mac
  4. Stack Overflow: Completely uninstall Node.js on Mac
  5. GitHub Gist: Completely uninstall node.js
  6. ReactGo: Uninstall Node.js from macOS

Заключение

Полное удаление Node.js на Mac OS X через ручную чистку /usr/local, NVM и профилей плюс свежая установка через NVM — это надёжный способ избавиться от “призраков” вроде v0.6.1-pre. Теперь ваша система чистая, Node LTS работает, и библиотеки вроде zipstream ставятся без хлопот. Главное — всегда проверяйте which node перед обновлениями, и конфликты уйдут навсегда. Удачи в кодинге!

Авторы
Проверено модерацией
Модерация
Как полностью удалить и заново установить Node.js на Mac