NPM (Node Package Manager) — это утилита командной строки для установки, обмена и управления пакетами и модулями Node.js. Это менеджер пакетов для языка программирования JavaScript. NPM устанавливается вместе с Node.js и позволяет разработчикам легко делиться и повторно использовать код из реестра NPM.
В этом подробном руководстве мы подробно рассмотрим, как установить NPM на операционные системы Debian/Ubuntu и CentOS/RHEL. Мы проверим существующие установки, деинсталлируем старые версии, если это необходимо, и пройдёмся по процессу установки шаг за шагом. Давайте приступим!
Проверка существующих установок
Перед установкой или переустановкой NPM стоит проверить, установлены ли у вас уже Node.js и NPM и какие версии существуют в вашей системе.
Откройте терминал и введите:
$ node --version
$ npm --version
Если Node.js и NPM установлены, эти команды покажут номер текущей версии. Например, в моей системе я вижу:
$ node --version
v18.19.0
$ npm --version
10.2.3
Этот вывод показывает, что у меня уже установлены Node v18.19.0 и NPM v10.2.3.
Если эти команды не выдают номер версии, это, скорее всего, означает, что Node.js и NPM еще не установлены в вашей системе.
Удаление старых версий (если требуется)
Если у вас установлена старая версия, которую вы хотите заменить, мы расскажем, как удалить Node.js и NPM из систем Debian/Ubuntu и CentOS/RHEL.
Примечание: Удаление старых установок требуется только в том случае, если вы хотите полностью удалить существующую версию и зависимости для новой свежей установки. Если вас устраивает текущая версия и вам нужны только последние обновления, вы можете перейти к разделу установки.
Удаление Node.js на Debian/Ubuntu
Чтобы удалить Node.js на Debian/Ubuntu, выполните команду:
$ sudo apt-get remove nodejs
$ sudo apt-get purge nodejs
$ sudo apt-get autoremove
Это приведет к удалению Node.js из вашей системы вместе с любыми связанными пакетами и конфигурационными файлами.
Вы также можете выполнить:
$ sudo apt-get remove --purge nodejs npm
Это приведет к удалению Node.js, а также NPM.
Удаление Node.js на CentOS/RHEL
Чтобы удалить Node.js на CentOS/RHEL, выполните следующие действия:
$ sudo yum remove nodejs
$ sudo yum autoremove
Это приведет к удалению пакета Node.js и очистке всех зависимостей.
Чтобы также удалить NPM, используйте:
$ sudo yum remove npm
После удаления старых установок вы готовы установить последнюю версию Node.js и NPM на свою систему.
Установка на Debian/Ubuntu
Существует несколько различных вариантов установки Node.js и NPM на системы Debian и Ubuntu. Мы рассмотрим использование репозиториев по умолчанию, а затем несколько альтернативных методов установки.
Установка из репозиториев по умолчанию
Этот метод предполагает установку Node.js и NPM из стандартных репозиториев Ubuntu. Включенные версии могут быть не самыми последними, но это надежный способ установки на системы Ubuntu.
Чтобы установить Node.js и NPM, выполните следующие действия:
$ sudo apt update
$ sudo apt install nodejs npm
Это позволит установить Node.js и NPM из репозиториев Ubuntu и автоматически установить некоторые зависимости.
Вы можете проверить установленные версии:
$ node --version
$ npm --version
Использование репозитория NodeSource
Популярной альтернативой является добавление репозитория NodeSource в apt и установка из него. Это позволит вам установить более актуальную версию Node.js, чем та, что доступна в стандартных репозиториях Ubuntu.
Сначала проверьте последнюю версию Node.js LTS, доступную на сайте NodeSource: https://github.com/nodesource/distributions
На момент написания статьи последней LTS-версией является Node 18.x, которую мы и будем использовать здесь. Но перед установкой проверьте наличие последней версии.
Сначала установите NodeSource PPA, чтобы получить доступ к его содержимому:
$ curl -sL https://deb.nodesource.com/setup_18.x | sudo -E bash -
Примечание: Измените номер версии в URL после ‘setup_’, чтобы он соответствовал последней версии LTS, которую вы хотите установить.
PPA был добавлен, и ваши системные репозитории обновлены. Теперь установите Node.js и npm:
$ sudo apt-get install -y nodejs
Наконец, проверьте установку:
$ node --version
$ npm --version
Использование диспетчера версий узла (nvm)
Еще более гибким вариантом является установка скрипта nvm, который позволяет легко устанавливать и переключаться между несколькими версиями Node на одной системе.
Чтобы установить nvm на Ubuntu, сначала установите инструменты сборки, необходимые для некоторых пакетов:
$ sudo apt update
$ sudo apt install build-essential libssl-dev
Затем установите nvm с помощью curl и активируйте его:
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
$ [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
Установив nvm, вы теперь можете легко установить любую версию Node следующим образом:
$ nvm install 18.19.0
Используйте последнюю версию LTS вместо 18.19.0.
И переключайтесь между версиями следующим образом:
$ nvm use 18.19.0
Вы можете перечислить все установленные версии:
$ nvm list
И используйте nvm для установки NPM:
$ nvm install-latest-npm
Этот метод установки дает вам полный контроль над версиями Node, установленными в вашей системе.
Сборка из исходных текстов
Другой вариант — собрать Node из исходников. Это позволит вам установить Node с определенными пользовательскими конфигурациями, если это необходимо.
Сначала установите необходимые инструменты для сборки:
$ sudo apt-get install gcc g++ make
Затем загрузите последнюю версию исходного кода Node:
$ curl -sL https://nodejs.org/dist/v18.19.0/node-v18.19.0.tar.gz -o node.tar.gz
Замените версию 18.19.0 на желаемый номер версии. Затем распакуйте tarball:
$ tar -xzf node.tar.gz
Переместитесь в распакованный каталог и настройте сборку:
$ cd node-v*
$ ./configure
Теперь выполните сборку и установку:
$ make
$ sudo make install
Наконец, проверьте установку:
$ node --version
$ npm --version
Этот метод установки позволяет создавать пользовательские конфигурации, но является более сложным, чем другие методы.
Установка на CentOS/RHEL
Как и в Ubuntu, в CentOS/RHEL есть несколько вариантов установки Node.js и NPM.
Установка из репозиториев по умолчанию
Этот способ подразумевает установку из репозиториев пакетов по умолчанию в системах CentOS/RHEL. Версия будет не самой последней, но это стабильный способ установки.
Для CentOS/RHEL 7:
$ sudo yum install nodejs
Для CentOS/RHEL 8:
$ dnf module install nodejs:18
Использование репозитория NodeSource
Популярной альтернативой является добавление репозитория NodeSource и установка оттуда. Это дает вам доступ к более актуальным версиям Node.js.
Сначала проверьте последние доступные версии из NodeSource здесь: https://github.com/nodesource/distributions
На момент написания этой статьи последней версией LTS является v18.x, поэтому мы будем использовать ее:
$ sudo yum install -y gcc-c++ make
Сначала устанавливаются некоторые необходимые инструменты сборки. Затем добавьте репозиторий NodeSource:
$ curl -sL https://rpm.nodesource.com/setup_18.x | sudo bash -
Установите Node.js и npm:
$ sudo yum install nodejs
Проверьте версии:
$ node --version
$ npm --version
Использование nvm
Вы также можете установить nvm для управления несколькими версиями Node.js на CentOS/RHEL.
Установите необходимые инструменты сборки:
$ sudo yum install gcc-c++ make
Затем установите nvm:
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
Активируйте nvm:
$ export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
$ [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
Теперь вы можете установить любую версию Node.js:
$ nvm install 18.19.0
Переключение между установленными версиями:
$ nvm use 18.19.0
Список установленных версий:
$ nvm list
Установите NPM:
$ nvm install-latest-npm
Использование nvm дает вам гибкость в установке и управлении несколькими версиями Node.js по мере необходимости.
Сборка из исходных текстов
Вы также можете скомпилировать Node из исходного кода, если вам нужны пользовательские конфигурации.
Установите необходимые инструменты сборки:
$ sudo yum groupinstall "Development Tools"
Загрузите исходный код нужной версии Node:
$ curl -sL https://nodejs.org/dist/v18.19.0/node-v18.19.0.tar.gz -o node.tar.gz
Замените 18.19.0 на желаемую версию.
Распакуйте tarball:
$ tar -xzf node.tar.gz
Переместитесь в распакованный каталог и настройте:
$ cd node-v*
$ ./configure
Сборка и установка:
$ make
$ sudo make install
Проверить установку:
$ node --version
$ npm --version
Хотя сборка из исходных текстов сложнее других методов, она позволяет настраивать параметры конфигурации.
Обновление NPM
Если Node.js и NPM уже установлены, и вы хотите обновить их до последней версии, используйте:
$ sudo npm install -g npm@latest
Это использует NPM для самостоятельного обновления до последней доступной версии.
Или для обновления до определенной версии:
$ sudo npm install -g [email protected]
Замените 10.2.3 на номер версии NPM, до которой вы хотите обновиться.
Вы также можете использовать Node Version Manager (nvm) для обновления до последней версии NPM:
$ nvm install-latest-npm
Это позволит установить последнюю доступную версию NPM для активной версии Node.js в системе.
Использование
Установив NPM, вы можете использовать различные команды npm для установки и управления пакетами.
Чтобы установить пакет:
$ npm install <package_name>
Это установит последнюю версию пакета в локальную папку node_modules в вашем текущем рабочем каталоге.
Чтобы установить пакет глобально:
$ npm install -g <package_name>
Глобальные пакеты устанавливаются в глобальную папку node_modules системы и могут быть доступны из любой точки системы.
Чтобы установить определенную версию пакета:
$ npm install <package_name>@<version>
Замените номер семвера пакета, который вы хотите установить.
Обновление пакетов:
$ npm update
Обновляет все пакеты в текущем рабочем каталоге до последних версий.
Список установленных пакетов:
$ npm list
Здесь перечислены все пакеты, установленные в локальной папке.
Чтобы просмотреть все установленные глобальные пакеты:
$ npm list -g --depth 0
Существует множество других команд NPM для публикации пакетов, управления зависимостями, запуска скриптов и т. д. Некоторые другие часто используемые команды включают:
npm init
— Создать новый файл package.jsonnpm test
— Запуск тестов для пакетаnpm start
— Запустите стартовый скрипт, определенный в файле package.jsonnpm run <script_name>
— Запуск определенного пользователем сценарияnpm outdated
— Проверка наличия устаревших пакетовnpm uninstall <package_name>
— Деинсталляция пакета
Для получения подробной справки по всем командам npm посетите сайт: https://docs.npmjs.com/cli/v10/commands
Заключение
В этой обширной статье мы рассмотрели, как проверить наличие существующих установок Node.js и NPM, удалить старые версии, если это необходимо, а также различные методы установки или обновления NPM на системах Debian/Ubuntu и CentOS/RHEL.
Мы рассмотрели использование репозиториев по умолчанию, NodeSource, Node Version Manager (nvm), сборку из исходного кода и обновление NPM до последней версии. Мы также затронули некоторые из наиболее часто используемых команд NPM и их применение после установки.
NPM — незаменимый инструмент для любого разработчика JavaScript. Следуя этим пошаговым инструкциям, вы сможете установить и управлять NPM на выбранном вами дистрибутиве Linux. Не стесняйтесь обращаться к этому руководству, когда вам понадобится установить, обновить или управлять NPM в системе Linux.