Гид по технологиям

Установка и использование NVM для Node.js на Debian 11

• 4 min read • DevOps • Обновлено 25 Nov 2025
NVM на Debian 11: установка и управление Node.js
NVM на Debian 11: установка и управление Node.js

Логотип и командная строка NVM для управления версиями Node.js

Краткое описание

NVM (Node Version Manager) — это утилита командной строки для установки и управления несколькими версиями Node.js в Linux. Она загружает и устанавливает нужные версии локально в домашней директории пользователя, не вмешиваясь в системные пакеты.

Предварительные требования

  • Сервер или виртуальная машина с Debian 11.
  • Настроенный пароль root или доступ sudo для установки зависимостей.

Почему использовать NVM

  • Изоляция версий: каждая версия Node хранится в домашней папке пользователя.
  • Простое переключение между версиями командой nvm use.
  • Совместимость с разными проектами, которым требуются разные версии Node.

Важно: NVM работает для каждого пользователя отдельно. Если несколько пользователей на одной машине должны использовать разные версии Node, установите NVM для каждого пользователя отдельно.

Установка зависимостей

Перед установкой NVM убедитесь, что установлены curl и gnupg2:

apt-get install curl gnupg2 -y

Установка NVM

Скачайте и запустите официальный установочный скрипт:

curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash

Скрипт добавит необходимые настройки в файл ~/.bashrc (или в аналогичный профиль shell). Активируйте их:

source ~/.bashrc

Проверьте версию NVM:

nvm --version

Ожидаемый вывод (пример):

0.38.0

Установка Node.js через NVM

Установить последнюю доступную версию Node.js можно командой:

nvm install node

Пример вывода установки:

Downloading and installing node v16.9.0...
Downloading https://nodejs.org/dist/v16.9.0/node-v16.9.0-linux-x64.tar.xz...
######################################################################################################################################## 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v16.9.0 (npm v7.21.1)
Creating default alias: default -> node (-> v16.9.0)

Проверьте установленную версию Node:

node --version

Ожидаемый вывод:

v16.9.0

Для установки последней стабильной LTS-версии используйте флаг –lts:

nvm install node --lts

Установка конкретной версии (например, 12.17.0):

nvm install 12.17.0

Пример вывода:

Downloading and installing node v12.17.0...
Downloading https://nodejs.org/dist/v12.17.0/node-v12.17.0-linux-x64.tar.xz...
######################################################################################################################################## 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v12.17.0 (npm v6.14.4)

Проверьте текущую версию:

node --version

Ожидаемый вывод:

v12.17.0

Управление версиями Node.js с помощью NVM

  • Показать все установленные версии:
nvm ls

Пример вывода:

->     v12.17.0
        v16.9.0
default -> node (-> v16.9.0)
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v16.9.0) (default)
stable -> 16.9 (-> v16.9.0) (default)
lts/* -> lts/fermium (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.6 (-> N/A)
lts/fermium -> v14.17.6 (-> N/A)
  • Показать все доступные версии удалённо:
nvm ls-remote
  • Выбрать версию в текущей сессии:
nvm use 12.17.0

Ожидаемый вывод:

Now using node v12.17.0 (npm v6.14.4)
  • Запустить Node с определённой версией на конкретном скрипте:
nvm run v12.17.0 app.js
  • Удалить версию:
nvm uninstall v12.17.0
  • Узнать версию по умолчанию для пользователя:
nvm run default --version

Пример вывода:

Running node v16.9.0 (npm v7.21.1)
v16.9.0

Мини-методология установки и валидации

  1. Установите curl и gnupg2.
  2. Запустите install.sh от официального репозитория.
  3. Выполните source ~/.bashrc и проверьте nvm –version.
  4. Установите требуемые версии node: nvm install <версия>.
  5. Переключитесь и проверьте node –version и npm –version.

Чек-листы по ролям

  • Разработчик:

    • Установить NVM локально в своём аккаунте.
    • Установить версии, указанные в .nvmrc или package.json.
    • Проверить запуск тестов под каждой версией.
  • Системный администратор:

    • Обеспечить доступ к curl и обновлениям системы.
    • Описать политику резервных копий для конфигураций пользователей.

Типичные ошибки и способы их решения

  • Ошибка: nvm: команда не найдена. Решение: проверьте, что вы выполнили source ~/.bashrc и что строки установки NVM добавлены в профиль shell (например, ~/.bashrc, ~/.profile или ~/.zshrc).
  • Ошибка при установке из-за прав доступа: убедитесь, что вы не пытаетесь устанавливать Node глобально через системный пакетный менеджер; NVM устанавливает в домашнюю директорию пользователя.
  • Конфликт с системным пакетом nodejs: удалите системную версию, если она мешает (apt remove nodejs) или убедитесь, что пути PATH указывают сначала на NVM.

Альтернативы и когда они полезны

  • n — простая альтернатива для быстрых переключений (требует sudo для глобальной установки).
  • Пакеты от NodeSource — удобны, если вам нужна системная (глобальная) установка Node для всех пользователей.

Когда NVM не подходит:

  • Нужна системная установка Node для служб, запускаемых от root или systemd — лучше использовать пакеты дистрибутива или NodeSource.

Критерии приёмки

  • nvm –version возвращает версию.
  • nvm install <версия> успешно завершает установку.
  • node –version показывает ожидаемую версию после nvm use.
  • Проекты запускаются локально под нужной версией Node.

1‑строчный глоссарий

  • NVM: менеджер версий Node.js в пользовательской директории.
  • Node.js: среда выполнения JavaScript на стороне сервера.
  • LTS: Long Term Support — версия с долгосрочной поддержкой.

Заключение

NVM — простой и безопасный способ управлять версиями Node.js на Debian 11. Он полезен для разработчиков и тестировщиков, которым нужно запускать проекты под разными версиями Node. Если вам требуется системная установка для сервисов, рассмотрите альтернативы.

Примечание: всегда проверяйте зависимости проекта и согласовывайте используемую версию Node с командой разработки.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро