Как установить последние версии NodeJS и NPM?


203

Я заметил на веб-сайте https://nodejs.org/, что этот узел в настоящее время имеет версию 0.12.0.

Может кто-нибудь сообщить мне, как установить последнюю версию узла вместе с npm (команды терминала, пожалуйста)?


1
Что не так с sudo apt-get install nodejs?
Алик Эльзин-килака

20
^ он устанавливает 1.10.0.
silicrockstar

6
@siliconrockstar, который фактически установил v0.10.25 на моем 14.04 LTS
Алессандро

1
В Ubuntu 16 использоватьsudo apt-get install nodejs-legacy
briankip

Ответы:


253

Свежая установка

Используйте NodeSource PPA. Для получения подробной информации смотрите инструкции по установке . Сначала выберите нужную версию Node.js и добавьте источники для нее:

v=8   # set to 4, 5, 6, ... as needed
curl -sL https://deb.nodesource.com/setup_$v.x | sudo -E bash -

Затем установите пакет Node.js.

sudo apt-get install -y nodejs

PS: curlпакет должен быть установлен на сервере для этих строк кода.

модернизация

Если вы nodejsуже установили и хотите обновить, то сначала удалите текущую установку и установите ее снова, используя приведенные выше сценарии.

sudo apt-get purge nodejs npm

1
NodeSource использует два отдельных PPA: один для версии 0.10.X и для 0.12.X. Кроме того, он содержит последний пакет npm.
23

11
не работает для меня После запуска и curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -установки nodejsя закончил сv0.10
Daithí

46
Заворачивание в корневую оболочку так неправильно во многих отношениях.
Драко Атер

8
Ответ от Guss ниже должен был быть принятым ответом. Это не рекомендуемый способ сделать это.
Патрик Фабрициус

2
@AlexanderMills ответ, предоставленный ниже ( askubuntu.com/a/711976/389358 ), даст вам последнюю версию nodejs от NodeSource - этот пакет также включает в себя последнюю версию npm.
Кифер Рурк

166

Вообще говоря, загрузка произвольных данных из URL-адреса в сеанс корневой оболочки не является хорошей идеей, и я бы хотел, чтобы люди перестали использовать это как решение для всего: «Пожалуйста, просто запустите этот скрипт, который я вам отправляю, а также пока мы» на это - у меня есть мост, который вы, вероятно, были бы заинтересованы в покупке ".

В качестве альтернативы, вот «Путь Ubuntu», позволяющий сделать то же самое, где вы можете увидеть, как обновляется система, и узнать, какие репозитории и какие ключи добавлены в конфигурацию вашей системы:

curl https://deb.nodesource.com/gpgkey/nodesource.gpg.key | sudo apt-key add -
sudo apt-add-repository "deb https://deb.nodesource.com/node_7.x $(lsb_release -sc) main"
sudo apt-get update
sudo apt-get install nodejs

Это для последней (на момент написания) версии 7 Nodejs. Другие версии также можно получить с помощью простого изменения URL-адреса репо - для получения подробной информации обратитесь к документации для nodeource.com.


2
Я полностью согласен с вашим утверждением, но разве не добавляется новый репозиторий в apt, такой же, как запуск какого-то неизвестного скрипта? (Хотя я понимаю сценарий в каждом другом ответе здесь, на самом деле добавление этого репо само по себе)
Дан

19
Скрипт сам добавляет репо, а также делает бог знает что. Сейчас это может быть совершенно безобидно, но кто знает, что будут делать угонщики DNS или эксплуататоры веб-сайтов в будущем? Добавление репо - это не то же самое, что запуск сценария в Интернете, поскольку сам по себе он не загружает исполняемый код или не запускает его - он делает это только в ответ на конкретную установку apt-get, которая проверит, подписан ли пакет с ключом узлов источника, который, как мы надеемся, хранится гораздо надежнее, чем домен узла или веб-сайт. Безопасность APT превосходна и имеет хороший послужной список.
Guss

1
@Dan, похоже, вы используете Ubuntu 15.04 (utopic), который не поддерживается Node Source, поэтому вы получаете 0.10 из репозиториев utopic. Node Source поддерживает только выпуски LTS и последние версии, отличные от LTS. Поскольку у вас нет выпуска LTS, вы должны обновить его до последней версии, которая выйдет в октябре прошлого года. Так что либо сделайте это, либо взломайте его, изменив $(lsb_release -c)бит автоопределения выпуска на один из поддерживаемых выпусков и устраните последствия.
Guss

2
@PaulDraper: Спросите нодсорсеры, они продают мосты, которые им не принадлежат. Мое apt-getрешение - прямой допинг.
Гусс

1
офигенный ответ! если кому-то еще интересно, это работает только для более новых версий - например: просто замените 7 на 9
Михай Ротару

34

Node.js v4.x:

# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
sudo apt-get install -y nodejs

# Using Debian, as root
curl -sL https://deb.nodesource.com/setup_4.x | bash -
apt-get install -y nodejs

источник: https://github.com/nodesource/distributions#debinstall


13
Заворачивание в корневую оболочку так неправильно во многих отношениях.
Драко Атер

25

Если вы хотите обновить внутри npm, вы можете использовать nкоманду:

sudo npm cache clean -f
sudo npm install -g n
sudo n stable
sudo npm install npm@latest

Это устанавливает пакет n, который вы можете использовать для переключения версий NodeJS, и использует его. Сравнение с альтернативным NVM и опциями команд находятся на SO . Также есть запись в блоге .


1
Я добавил NVM шаг за шагом по адресу: askubuntu.com/a/971612/52975
Сиро Сантилли,

1
Я довольно новичок в npm и nvm; Я пытаюсь установить npm внутри python virtualenv; имеет ли значение, использую ли я npm или nvm? nvm install lts/carbonустанавливает npm и узел для меня. Чем это отличается от приведенных выше команд, которыми вы поделились?
kRazzy R

@kRazzyR: вы можете выбрать, использовать nvmили nобновить NodeJS и npm. В обоих случаях вы используете npmдля установки пакетов узлов.
серв-


8

Чтобы установить NPM,

sudo apt-get install npm

Тогда для узла,

sudo npm cache clean -f
sudo npm install -g n
sudo n 0.xx.x  // here is the version what you want.. 

Эта команда установит узел на основе вашей версии, которую вы хотите ..


8

NVM (менеджер версий узлов)

https://github.com/creationix/nvm

NVM устанавливает для вас как последний стабильный узел, так и npm

curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | sh
source ~/.nvm/nvm.sh
nvm install --lts
nvm use --lts
npm --version

Теперь проверьте это с помощью фиктивного пакета:

npm install --global vaca
vaca

Так как поиск источников должен быть выполнен для каждой новой оболочки, хаки установочного скрипта добавляют некоторую автоматическую загрузку в конец вашей .barshrc. Это работает, но я предпочитаю удалить автоматически добавленный и добавить свой собственный:

f="$HOME/.nvm/nvm.sh"
if [ -r "$f" ]; then
  . "$f" &>'/dev/null'
  nvm use --lts &>'/dev/null'
fi

Преимущества:

  • позволяет использовать несколько версий Node и без sudo

  • является аналогом Ruby RVM и Python Virtualenv, широко признанным лучшим опытом в сообществах Ruby и Python

  • по возможности загружает предварительно скомпилированный двоичный файл, а если нет, то загружает исходный код и компилирует его для вас

Мы можем легко переключать версии узлов с помощью:

nvm install 0.9.0
nvm install 0.9.9
nvm use 0.9.0
node --version
#v0.9.0
nvm use 0.9.9
node --version
#v0.9.9

Затем вы можете использовать отслеживаемый .nvmrcфайл git для указания версии узла, необходимой для данного проекта: https://stackoverflow.com/questions/24869959/how-do-i-specify-a-local-version-of-node-for -a-проект / 54503474 # 54503474

Протестировано в Ubuntu 17.10.



4

Вы можете установить последнюю версию очень легко, используя нижеприведенную инструкцию.

curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -

Vesion 7.x является последней версией узла.

sudo apt-get установить nodejs

Над строкой будет установлен nodejs.

sudo apt-get install build-essential

Это установит необходимые модули для правильной работы nodejs.

Теперь проверьте, правильно ли установлен nodejs на вашем конце

nodejs -v

Это вернет установленную версию nodejs.

нпм -в

Это вернет установленную версию npm. Надеюсь, это поможет....

Ссылка Source: покажет вам, как установить nodejs, используя и другие методы.


Зачем устанавливать build-essential?
Дэвид Фёрстер

Пакет nodejs содержит двоичный файл nodejs, а также npm. Однако, чтобы некоторые пакеты npm работали (например, те, которые требуют сборки из исходного кода), вам необходимо установить пакет build-essentials
Jitendra Pawar

4

Node.js доступен в виде мгновенного пакета во всех поддерживаемых в настоящее время версиях Ubuntu. Специально для Node.js разработчики могут выбрать один из поддерживаемых в настоящее время выпусков и получать регулярные автоматические обновления непосредственно из NodeSource. В настоящее время доступны версии 6, 8, 9, 10, 11 и 12 Node.js, а Snap Store обновляется в течение нескольких часов или минут после выпуска Node.js.

Узел может быть установлен с помощью одной команды, например:

sudo snap install node --classic --channel 11/stable 

Доступ к привязке узла можно получить с помощью команды node, например:

$ node -v  
v11.5.0

Обновленная версия npm будет установлена ​​как часть привязки узла. npm должен запускаться за пределами узла repl в вашей обычной оболочке. После установки привязки узла выполните следующую команду, чтобы включить проверку обновлений npm:

sudo chown -R $ USER: $ (id -gn $ USER) / home / ваше имя пользователя /.config

Замените your-usernameв приведенной выше команде своим собственным именем пользователя. Затем запустите, npm -vчтобы проверить, актуальна ли версия npm. В качестве примера я проверил, что npm был актуален, с помощью команды проверил версию уже установленного пакета с именем yarn, npm list yarnа затем обновил существующий пакет yarn до последней версии с помощью команды.npm update yarn

Пользователи могут переключаться между версиями Node.js в любое время без необходимости привлечения дополнительных инструментов, таких как nvm (Node Version Manager), например:

sudo snap refresh node --channel=11/stable

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

sudo snap switch node --edge

Этот подход рекомендуется только для тех пользователей, которые готовы участвовать в тестировании и сообщении об ошибках в апстриме.

Расписание Node.js LTS

Деблокировать код состояния LTS LTS Начало обслуживания Начало обслуживания Окончание обслуживания
6.x Активный бор 2016-10-18 апрель 2018 апрель 2019
7.x Нет LTS              
8.x Активный углерод 2017-10-31 апрель 2019 декабрь 2019
9.x Нет LTS              
10.x Активный Дубний Октябрь 2018 Апрель 2020 Апрель 2021  
11.x Нет LTS 2019-04-01 2019-06-30
12.x 2019-10-22 2021-04-01 2022-04-01
13.x Нет LTS 2020-04-20 2020-06-01


3

Просто ответ на @ 23W (принятый ответ).

Это просто содержимое скрипта, просто чтобы не делать curl для корневой оболочки.

curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | sudo apt-key add -
echo "deb https://deb.nodesource.com/node_6.x $(lsb_release -c -s) main" | sudo tee /etc/apt/sources.list.d/nodesource.list
echo "deb-src https://deb.nodesource.com/node_6.x $(lsb_release -c -s) main" | sudo tee -a /etc/apt/sources.list.d/nodesource.list

sudo apt-get update
sudo apt-get install -y nodejs



2

Мой любимый способ установки последних версий nodejs и npm - использовать архив установочных двоичных файлов, представленный на веб-сайте nodejs.

Это также может быстро стать вашим новым любимым способом. Работает как шарм. Это включает 1 загрузку и 1 команду. Готово. НЕТ ошибок [несколько раз я сделал это]. Не нужно было удалять существующие вещи заранее.

Установка nodejs через двоичные файлы


Сначала удалите установленную версию: (если существует)

sudo apt-get remove nodejs

Скачать

https://nodejs.org/en/download/stable/

Загрузите бинарные файлы Linux.

  • Мне пришлось извлечь tar.xz в папку, а затем повторно сжать как tar.gz

устанавливать

sudo tar -C /usr/local --strip-components 1 -xzf /path/to/downloaded/tar/node-vYOURVERSION-linux-x64.tar.gz

проверить

node -v
npm --version

Источник

http://www.thegeekstuff.com/2015/10/install-nodejs-npm-linux/


1
Зачем повторно сжимать как tar.gz? tarподдерживает --xz- и -C /usr/localпусть tarсделает cdза вас.
Муру

2

Видео Объяснение


NVM очень прост в установке и позволяет легко переключать версии узлов. Из репозитория github :

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

загружает и запускает установочный скрипт

nvm ls-remote

чтобы увидеть доступные версии. Скажем, вы хотите установить версию 8.9.4

nvm install 8.9.4

и вы сделали.

Чтобы установить другую версию и использовать ее (скажем, 9.6.1)

nvm install 9.6.1
nvm alias default 9.6.1

1

Обновить менеджер пакетов

sudo apt-get update

Добавление NodeJS PPA

sudo apt-get install python-software-properties
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -

Установка NodeJS и NPM

sudo apt-get install nodejs

Здесь я написал полный пост в блоге об установке NodeJS и NPM в Ubuntu. Нажмите здесь, чтобы прочитать


Свертывание в корневую оболочку - это действительно плохая вещь, которую нужно делать в связи с огромным количеством возникающих проблем безопасности, я бы порекомендовал вам обновить свой блог и свой ответ, чтобы этого не делать.
Шаттл87

1

Такой подход позволяет легко удалять Node.JS, сохранять разные версии и предоставлять команды всем пользователям системы.

Скачать стабильную версию от Node.js , разархивируйте его, и переместить его в /opt.

Если вы хотите установить разные версии, вы можете переименовать папку в соответствии с ее кодом версии:

/opt/node/6.9.1

Поскольку только root может изменять файлы в /opt/, если вы не хотите вызывать call sudoкаждый раз, когда вам нужно изменить файл, измените разрешение группы:

chgrp adm -R /opt/node/10.15.3

Затем создайте файл, /etc/profile.d/node.shесли следующий контент:

export NODE_HOME=/opt/node/10.15.3

export CPLUS_INCLUDE_PATH=${NODE_HOME}/include
export C_INCLUDE_PATH=${NODE_HOME}/include
export LD_LIBRARY_PATH=${NODE_HOME}/lib
export MANPATH=${NODE_HOME}/share/man:${MANPATH}

export PATH=${NODE_HOME}/bin:$PATH

Выход из системы, вход в систему и X-Window перезагрузят все настройки профиля.

Если у вас были установлены предыдущие версии, чтобы избежать конфликтов библиотек, выполните:

npm cache clean

-1

Обновление менеджера пакетов

sudo apt-get update

Добавление PPA

sudo apt-get install python-software-properties

curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -

Установка NodeJS и NPM

sudo apt-get install nodejs

Для справки: установка NodeJS в Ubuntu - WebCheerz

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.