Как полностью удалить 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
- Шаг 1: Определите метод установки Node.js
- Шаг 2: Полностью удалите NVM
- Шаг 3: Удалите Node.js через Homebrew или pkg
- Шаг 4: Очистите все остаточные файлы
- Шаг 5: Проверьте полное удаление
- Шаг 6: Установите NVM заново
- Шаг 7: Установите свежий Node.js
- Шаг 8: Финальная проверка и советы
- Источники
- Заключение
Почему 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 — частый виновник. Удалите его целиком:
nvm deactivate(если активна версия).rm -rf ~/.nvm— сотрёт все версии Node внутри.- Откройте профили:
nano ~/.zshrc(или~/.bash_profileдля старого bash). - Удалите строки:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
[ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion"
- Сохраните (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.
Источники
- Sky.pro: Полное удаление и переустановка Node.js на Mac OS X
- VC.ru: Лучший путь переустановки Node.js на Mac
- Nektony: Uninstall Node on Mac
- Stack Overflow: Completely uninstall Node.js on Mac
- GitHub Gist: Completely uninstall node.js
- ReactGo: Uninstall Node.js from macOS
Заключение
Полное удаление Node.js на Mac OS X через ручную чистку /usr/local, NVM и профилей плюс свежая установка через NVM — это надёжный способ избавиться от “призраков” вроде v0.6.1-pre. Теперь ваша система чистая, Node LTS работает, и библиотеки вроде zipstream ставятся без хлопот. Главное — всегда проверяйте which node перед обновлениями, и конфликты уйдут навсегда. Удачи в кодинге!