Node.js
Как удалить Node.js на Ubuntu и Linux полностью и без лишнего мусора
Короткий ответ: Node.js удаляется тем же способом, которым был установлен. Если он ставился через apt, удаляйте через apt. Если через nvm, удаляйте через nvm uninstall. Если через snap, удаляйте через snap remove. Иначе можно удалить один Node.js, но оставить другой, а команда node -v все равно продолжит работать
Этот запрос часто появляется после неудачного обновления: в системе оказалось несколько версий, npm ставит пакеты не туда, проект запускается не той командой, а терминал показывает непонятный путь. Поэтому удаление лучше начинать не с sudo rm, а с диагностики
Проверьте, какой Node.js сейчас запускается
Выполните
node -v
npm -v
which node
which npm
Если which node показывает путь внутри ~/.nvm, Node.js установлен через nvm. Если путь /usr/bin/node, скорее всего это пакетная установка. Если путь /snap/bin/node, используется snap. Если путь /usr/local/bin/node, возможна ручная установка или старый установщик
Проверьте все найденные варианты
command -v node
whereis node
whereis npm
Не удаляйте системные файлы вручную, пока не понятно, откуда они взялись
Удаление Node.js, установленного через apt
Для обычной установки через apt используйте
sudo apt remove nodejs npm
sudo apt autoremove
Если нужно удалить конфигурационные остатки пакетов
sudo apt purge nodejs npm
sudo apt autoremove
После этого проверьте
node -v
npm -v
Если команды все еще работают, значит в системе есть другая установка Node.js
Удаление Node.js из NodeSource
Если Node.js ставился через NodeSource, сам пакет также удаляется через apt
sudo apt remove nodejs
sudo apt autoremove
Если хотите убрать репозиторий NodeSource, проверьте файлы источников
ls /etc/apt/sources.list.d/
Название может отличаться в зависимости от версии. После удаления файла репозитория выполните
sudo apt update
Удалять файлы в /etc/apt/sources.list.d/ стоит только когда вы уверены, что они относятся именно к NodeSource
Удаление Node.js, установленного через nvm
Проверьте список версий
nvm ls
Удалите конкретную версию
nvm uninstall 20
Если нужно удалить nvm целиком, сначала убедитесь, что проекты больше не используют версии из ~/.nvm. Затем можно убрать директорию ~/.nvm и строки загрузки nvm из shell-конфига
Обычно они находятся в одном из файлов
~/.bashrc
~/.zshrc
~/.profile
Строки могут выглядеть примерно так
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
После правки откройте новый терминал и проверьте node -v
Удаление Node.js, установленного через snap
Проверьте snap-пакеты
snap list | grep node
Удалите пакет
sudo snap remove node
После удаления проверьте
which node
node -v
Если node больше не найден, snap-версия удалена
Что делать с глобальными npm-пакетами
Глобальные пакеты могут лежать в разных местах. Посмотрите префикс npm
npm config get prefix
npm list -g --depth=0
Если Node.js удаляется полностью, глобальные пакеты вроде pm2, nodemon, typescript и serve тоже перестанут работать. Перед удалением production-сервера проверьте, не держится ли приложение на pm2
pm2 list
Если pm2 управляет процессами, сначала остановите приложение осознанно, а не удаляйте Node.js из-под работающего сервиса
Как проверить, что Node.js удален
После удаления выполните
node -v
npm -v
which node
which npm
Нормальный результат при полном удалении — сообщения вида command not found или пустой вывод для which
Если Node.js продолжает находиться, посмотрите путь. По нему обычно понятно, какой способ установки остался
Мини-практика
Если вы готовите систему к чистой переустановке, сделайте так: сначала зафиксируйте текущие пути через which node и which npm, затем удалите Node.js своим способом, потом откройте новый терминал и повторите проверку
Для переустановки после очистки лучше выбрать один способ. Для разработки обычно удобен nvm, для серверной системной установки — NodeSource или Docker
Частые ошибки
Удалили apt-пакет, но Node.js остался Вероятно, активна версия из nvm, snap или /usr/local/bin. Проверьте which node
Удалили директорию вручную и сломали npm Ручное удаление отдельных файлов часто оставляет битые ссылки. Лучше удалить пакетным менеджером или через nvm uninstall
Забыли про сервисы Если Node.js используется на сервере, проверьте systemd, pm2, Docker-контейнеры и cron-задачи
Удалили Node.js вместе с нужным проектом Node.js и проект — разные вещи. Удаление Node.js не должно удалять папку проекта, но проект перестанет запускаться, пока Node.js не будет установлен снова
Что почитать дальше по Node.js
Если нужен общий маршрут по теме, откройте рубрику Node.js. Для соседних задач пригодятся эти разборы:
- Как обновить Node.js на Linux и Ubuntu без поломки проекта
- Как удалить Node.js и npm полностью: Windows, Ubuntu, macOS
- Как установить Node.js на Ubuntu и Linux: apt, nvm и проверка
- Как в Node.js передать POST-параметры без JSON