Проблема версии Node.js 'nodejs' и 'node' [duplicate]

У этого вопроса уже есть ответ здесь: Как установить последние версии NodeJS и NPM? 19 ответов

Как установить последнюю версию node.js на Ubuntu? Я оглядывался, и ничего не могу найти. Есть ли пакет Ubuntu для node.js, или я должен сам его скомпилировать?

164
задан 6 September 2017 в 12:13

26 ответов

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

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

apt-key adv --keyserver keyserver.ubuntu.com --recv 68576280 apt-add-repository "deb https://deb.nodesource.com/node_7.x $(lsb_release -sc) main" apt-get update apt-get install nodejs

Это последнее (на момент написания ) Версия Nodejs 7. Для версии LTS (6) URL-адрес репозитория, который вы должны добавить, - https://deb.nodesource.com/node_6.x. Другие версии также можно получить с простым изменением URL-адреса репо - обратитесь за дополнительной информацией к документации nodeource.com.

Обратите внимание, что если вы используете альтернативное распределение Ubuntu, такое как Trisquel, команда $(lsb_release -sc) может не работает, поэтому вам придется заменить его совместимым именем версии Ubuntu, например xenial.

10
ответ дан 18 July 2018 в 06:47

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

https://github.com/creationix/nvm

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

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

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

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

позволяет использовать несколько версий узла и без 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
15
ответ дан 18 July 2018 в 06:47
В официальных репозиториях (15.04) есть nodejs -пакет. Рассмотрим также использование nodejs-legacy для команды node. для обновления до последней версии используйте пакет n, установленный через npm: sudo npm cache clean -f sudo npm install -g n sudo n stable

См. этот вопрос SO для сравнения NVM и N.

6
ответ дан 18 July 2018 в 06:47

Последние Nodejs Шаг 1 -:

cd /opt/ wget https://nodejs.org/dist/v6.2.1/node-v6.2.1.tar.gz

Извлеките исходный код tar.gz

tar -xvf node-*.tar.gz

Шаг 2-: Скомпилируйте и установите nodejs.

cd node-v6.2.1 ./configure make $ sudo make install

Примечание: Если вы обнаружили ошибку «make command not found»

sudo apt-get update sudo apt-get upgrade sudo apt-get install build-essential gcc -v make -v
1
ответ дан 18 July 2018 в 06:47

Самый простой способ установки Node.js на Ubuntu - использовать Node Version Manager (NVM). Это безопаснее, чем обновление пакетов узлов в Ubuntu до неподдерживаемых версий из PPA или сторонних репозиториев, что может привести к конфликтам или поломкам в системе управления пакетами apt. По сравнению с NVM, ручные установки из tarballs сложнее поддерживать и обновлять. Выполните следующие шаги для установки последнего узла с помощью NVM:

Шаг 1: Установите NVM

Запустите эту команду в терминале:

wget -qO- https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash

Шаг 2: Установите node

По завершении установки NVM закройте и снова откройте Terminal . Затем выполните следующую команду:

nvm install node

Шаг 3: Проверьте версию узла

Запустите следующие команды:

node --version npm --version

Если все пойдет хорошо, вы см. последние версии узлов и npm в качестве вывода. Вот и все, узел установлен и готов к запуску!

4
ответ дан 18 July 2018 в 06:47

Да, перейдите в Synaptic, найдите «nodejs». Пакеты расположены в репозитории юниверсов. Я предлагаю вам установить все пакеты, начиная с nodejs, если вы делаете разработку.

На всякий случай это не работает:

sudo apt-get install g++ curl libssl-dev apache2-utils git-core git clone git://github.com/joyent/node.git cd node ./configure make sudo make install

Это будет загружать исходный код узла .js, сделайте это и установите.

23
ответ дан 18 July 2018 в 06:47

Недавно я установил утилиту через NPM, когда узнал, что моя версия Node.js сама устарела. Не беспокойтесь - просто обновите мою установку Node.js и продвигайтесь вперед. Конечно, я мог просто нажать nodejs.org и получить новое изображение, но решил, что должен быть более простой способ. Оказывается, вы можете обновить свой локальный Node.js с помощью NPM:

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

И добавить к PATH, например (для Ubuntu)

echo "export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules" >> ~/.bashrc && source ~/.bashrc
1
ответ дан 18 July 2018 в 06:47

Я всегда нахожусь в использовании неофициального PPA - он обычно работает, но мне нравится, что существует некоторый уровень официальной связи между каналом распространения и проектом, который я использую ...

Лично это лучший удар для моего доллара, когда речь идет о ресурсе для многих хороших способов установки Node - https://gist.github.com/isaacs/579814

2
ответ дан 18 July 2018 в 06:47

Вот решение, которое проверяет md5sum один раз и сравнивает его с загруженным файлом, с возможностью удаления файла, если суммы md5 не совпадают. Он должен обратиться к жалобам на безопасность с ответа Арды.

#!/bin/bash if [[ -z $1 ]]; then printf "Usage: ./scriptname <file or url> <optional output filename>\n" exit 1 fi resource=$1 md5=`curl --silent --location ${resource} | md5sum | awk '{ print $1 }'` filename="$(date +%Y-%M-%d-%H-%m-%s-file)" if [[ -n $2 ]]; then filename=$2 fi curl --silent --location $resource -o $filename md52=`md5sum $filename | awk '{ print $1 }'` if [[ $md5 == $md52 ]]; then printf "File sums match.\n" printf "Saved file to $filename\n" else printf "File sums don't match.\n" #wrapping line to add newline, ugly, but it works read -rep "Delete file? " -n 1 fi if [[ $REPLY =~ ^[Yy]$ ]]; then rm $filename exit 1 else exit 0 fi

Сохраните это в файле, таком как safer-curl.sh, затем выполните chmod +x safer-curl.sh. Затем выполните следующее:

./safer-curl.sh <file or url> <optional output filename>

Проверено на Ubunt 12.04

2
ответ дан 18 July 2018 в 06:47

Поскольку этот вопрос имеет последнее слово и версия последней версии NodeJS теперь v0.12.2 (по состоянию на сегодняшний день), и если вы хотите установить эту версию, вам нужно запустить следующую команду

# Note the new setup script name for Node.js v0.12 curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash - # Then install with: sudo apt-get install -y nodejs

Update

NodeJS выпущен v5.8.0, и я все еще не нашел ppa для установки. Поэтому я устанавливаю его с помощью NVM следующим образом

Сначала установите nvm

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

Затем установите NodeJS v5.8.0

nvm install v5.8.0

Update Для тех, кто предпочитает PPA

16
ответ дан 18 July 2018 в 06:47

К счастью, существует очень простой способ управления версией вашего узла, используя модуль двоичного менеджера Node 'n'.

1: Проверьте текущую версию узла.

$node -v v0.6.12

2: очистить кеш npm

sudo npm cache clean -f

3: установить 'n'

sudo npm install -g n

4: перейти на более позднюю версию (этот шаг может занять некоторое время). может указать конкретную версию:

sudo n 0.8.11

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

sudo n stable

5: Проверить запущенную версию узла, чтобы убедиться, что он сработал:

$node -v v0.8.11

Если версия не выводит число на шаге 5, это не то, что вы ожидали.

1
ответ дан 18 July 2018 в 06:47

Узел - один из самых простых проектов для сборки. Просто измените версию, так как она продолжает меняться.

Просмотрите страницу http://nodejs.org/dist/latest/, чтобы узнать последнюю версию пакета.

cd /usr/local/src wget http://nodejs.org/dist/latest/node-v7.2.1.tar.gz tar -xvzf node-v7.2.1.tar.gz cd node-v7.2.1 ./configure make sudo make install which node

Вы должен видеть /usr/local/bin/node.

38
ответ дан 18 July 2018 в 06:47

Вот команды

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - sudo apt-get install -y nodejs
0
ответ дан 18 July 2018 в 06:47

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

в качестве альтернативы, вот в чем "убунту сторону" делать то же самое - это в основном все исходный скрипт делает автоматически, но здесь можно увидеть, как система обновляется и знаю, что РЕПО и какие ключи будут добавлены в настройки системы:

apt-key adv --keyserver keyserver.ubuntu.com --recv 68576280 apt-add-repository "deb https://deb.nodesource.com/node_7.x $(lsb_release -sc) main" apt-get update apt-get install nodejs

это последняя (на момент написания) Nodejs версии 7. Для LTS-версии (6), хранилище URL-адрес, вы должны добавить https://deb.nodesource.com/node_6.x. Другие версии также могут быть получены с помощью простого изменения URL-адреса РЕПО - обратитесь к документации nodesource.com для получения подробной информации.

обратите внимание, что если вы используете другой дистрибутив Ubuntu, таких как Trisquel, команда $(lsb_release -sc) может не работать, так что вам придется заменить его на совместимый название версии Ubuntu, например, xenial.

10
ответ дан 24 July 2018 в 18:40

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

https://github.com/creationix/nvm

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

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

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

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

позволяет использовать несколько версий узла и без 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
15
ответ дан 24 July 2018 в 18:40
В официальных репозиториях (15.04) есть nodejs -пакет. Рассмотрим также использование nodejs-legacy для команды node. для обновления до последней версии используйте пакет n, установленный через npm: sudo npm cache clean -f sudo npm install -g n sudo n stable

См. этот вопрос SO для сравнения NVM и N.

6
ответ дан 24 July 2018 в 18:40
  • 1
    -1, потому что это решение включает завихрение трубопровода в оболочку суперпользователя. Может ли кто-нибудь ответить на решение, которое не использует скрученные скрипты bash для добавления репозиториев? – nickguletskii 22 November 2015 в 11:42
  • 2
    @nickguletskii Это направления, которые предоставляет проект nodejs . – jrg♦ 23 November 2015 в 18:22
  • 3
    @ Джеймс, я понимаю. Однако, говоря, что эти указания ошибочны, это преуменьшение (хотя вы могли бы сказать, что почти все node.js). Хотя это не так плохо, как могло бы быть (по крайней мере, скрипт обслуживается через https), он все равно может привести к частичной загрузке, так что rm -rf /usr/blah/blah может превратиться в rm -rf /usr. Это всего лишь очень плохо, и я не думаю, что «это направления, которые предоставляют разработчики». является хорошим оправданием. – nickguletskii 23 November 2015 в 19:44
  • 4
    @nickguletskii доверяют мне - я знаю об опасностях. Это плохая идея, но до тех пор, пока разработчики поддерживают это как направление установки, это то, с чем нам приходится иметь дело. – jrg♦ 24 November 2015 в 00:00
  • 5
    моя проблема заключается в установке как nodejs not node .. так что если после установки nodejs, я не могу получить доступ к nodejs как "узел" но как "nodejs" – Rizwan Patel 25 February 2016 в 20:47

Последние Nodejs Шаг 1 -:

cd /opt/ wget https://nodejs.org/dist/v6.2.1/node-v6.2.1.tar.gz

Извлеките исходный код tar.gz

tar -xvf node-*.tar.gz

Шаг 2-: Скомпилируйте и установите nodejs.

cd node-v6.2.1 ./configure make $ sudo make install

Примечание: Если вы обнаружили ошибку «make command not found»

sudo apt-get update sudo apt-get upgrade sudo apt-get install build-essential gcc -v make -v
1
ответ дан 24 July 2018 в 18:40

Самый простой способ установки Node.js на Ubuntu - использовать Node Version Manager (NVM). Это безопаснее, чем обновление пакетов узлов в Ubuntu до неподдерживаемых версий из PPA или сторонних репозиториев, что может привести к конфликтам или поломкам в системе управления пакетами. По сравнению с NVM, ручные установки из tarballs сложнее поддерживать и обновлять. Выполните следующие шаги для установки последнего узла с помощью NVM:

Шаг 1: Установите NVM

Запустите эту команду в терминале:

wget -qO- https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash

Шаг 2: Установите node

По завершении установки NVM закройте и снова откройте Terminal . Затем выполните следующую команду:

nvm install node

Шаг 3: Проверьте версию узла

Запустите следующие команды:

node --version npm --version

Если все пойдет хорошо, вы см. последние версии узлов и npm в качестве вывода. Вот и все, узел установлен и готов к запуску!

4
ответ дан 24 July 2018 в 18:40

Да, перейдите в Synaptic, найдите «nodejs». Пакеты расположены в репозитории юниверсов. Я предлагаю вам установить все пакеты, начиная с nodejs, если вы делаете разработку.

На всякий случай это не работает:

sudo apt-get install g++ curl libssl-dev apache2-utils git-core git clone git://github.com/joyent/node.git cd node ./configure make sudo make install

Это будет загружать исходный код узла .js, сделайте это и установите.

23
ответ дан 24 July 2018 в 18:40
  • 1
    Не было бы "sudo apt-get build-dep nodejs" быть более подходящим, чем ваша «apt-get install», линия? – freddyb 18 June 2011 в 21:10
  • 2
    @freddyb Не больно иметь это так. – nickguletskii 18 June 2011 в 21:20
  • 3
    Спасибо за ваш ответ - однако недавно я обнаружил, что node.js имеет «официально неофициальный». PPA - поэтому я ответил так, так как было бы не вежливо переписать весь ваш ответ с помощью «правильной». инструкции. – jrg♦ 28 November 2011 в 07:23
  • 4
    Однако я предпочитаю это решение вместо sudo apt-get install nodejs, это последнее не дает вам последней версии. – Rubens Mariuzzo 13 January 2013 в 01:28
  • 5
    @rubens нет, если вы используете PPA, описанный выше. – jrg♦ 23 October 2013 в 17:35

Недавно я установил утилиту через NPM, когда узнал, что моя версия Node.js сама устарела. Не беспокойтесь - просто обновите мою установку Node.js и продвигайтесь вперед. Конечно, я мог просто нажать nodejs.org и получить новое изображение, но решил, что должен быть более простой способ. Оказывается, вы можете обновить свой локальный Node.js с помощью NPM:

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

И добавить к PATH, например (для Ubuntu)

echo "export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules" >> ~/.bashrc && source ~/.bashrc
1
ответ дан 24 July 2018 в 18:40

Я всегда нахожусь в использовании неофициального PPA - он обычно работает, но мне нравится, что существует некоторый уровень официальной связи между каналом распространения и проектом, который я использую ...

Лично это лучший удар для моего доллара, когда речь идет о ресурсе для многих хороших способов установки Node - https://gist.github.com/isaacs/579814

2
ответ дан 24 July 2018 в 18:40

Вот решение, которое проверяет md5sum один раз и сравнивает его с загруженным файлом, с возможностью удаления файла, если суммы md5 не совпадают. Он должен обратиться к жалобам на безопасность с ответа Арды.

#!/bin/bash if [[ -z $1 ]]; then printf "Usage: ./scriptname <file or url> <optional output filename>\n" exit 1 fi resource=$1 md5=`curl --silent --location ${resource} | md5sum | awk '{ print $1 }'` filename="$(date +%Y-%M-%d-%H-%m-%s-file)" if [[ -n $2 ]]; then filename=$2 fi curl --silent --location $resource -o $filename md52=`md5sum $filename | awk '{ print $1 }'` if [[ $md5 == $md52 ]]; then printf "File sums match.\n" printf "Saved file to $filename\n" else printf "File sums don't match.\n" #wrapping line to add newline, ugly, but it works read -rep "Delete file? " -n 1 fi if [[ $REPLY =~ ^[Yy]$ ]]; then rm $filename exit 1 else exit 0 fi

Сохраните это в файле, таком как safer-curl.sh, затем выполните chmod +x safer-curl.sh. Затем выполните следующее:

./safer-curl.sh <file or url> <optional output filename>

Проверено на Ubunt 12.04

2
ответ дан 24 July 2018 в 18:40

Поскольку этот вопрос имеет последнее слово и версия последней версии NodeJS теперь v0.12.2 (по состоянию на сегодняшний день), и если вы хотите установить эту версию, вам нужно запустить следующую команду

# Note the new setup script name for Node.js v0.12 curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash - # Then install with: sudo apt-get install -y nodejs

Update

NodeJS выпущен v5.8.0, и я все еще не нашел ppa для установки. Поэтому я устанавливаю его с помощью NVM следующим образом

Сначала установите nvm

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

Затем установите NodeJS v5.8.0

nvm install v5.8.0

Update Для тех, кто предпочитает PPA

16
ответ дан 24 July 2018 в 18:40
  • 1
    подтверждено. это текущий способ обновления узла на ubuntu. – jhohlfeld 21 May 2015 в 18:11
  • 2
  • 3
    Я получаю сообщение об ошибке: W: Failed to fetch https://deb.nodesource.com/node_0.12/dists/trusty/main/source/Sources Received HTTP code 403 from proxy after CONNECT - не работает ли это через apt-cacher-ng? – detly 13 June 2015 в 15:34
  • 4
    -1 для обтекания трубопровода к оболочке суперпользователя. – Josh Milthorpe 6 December 2016 в 20:56
  • 5
    @JoshMilthorpe Спасибо! Да, я знаю проблему трубопровода. FYI, это не просто суперпользователь. Но использование nvm для управления несколькими версиями NodeJS очень популярно – nmrony 12 October 2017 в 12:36

К счастью, существует очень простой способ управления версией вашего узла, используя модуль двоичного менеджера Node 'n'.

1: Проверьте текущую версию узла.

$node -v v0.6.12

2: очистить кеш npm

sudo npm cache clean -f

3: установить 'n'

sudo npm install -g n

4: перейти на более позднюю версию (этот шаг может занять некоторое время). может указать конкретную версию:

sudo n 0.8.11

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

sudo n stable

5: Проверить запущенную версию узла, чтобы убедиться, что он сработал:

$node -v v0.8.11

Если версия не выводит число на шаге 5, это не то, что вы ожидали.

1
ответ дан 24 July 2018 в 18:40

Узел - один из самых простых проектов для сборки. Просто измените версию, так как она продолжает меняться.

Просмотрите страницу http://nodejs.org/dist/latest/, чтобы узнать последнюю версию пакета.

cd /usr/local/src wget http://nodejs.org/dist/latest/node-v7.2.1.tar.gz tar -xvzf node-v7.2.1.tar.gz cd node-v7.2.1 ./configure make sudo make install which node

Вы должен видеть /usr/local/bin/node.

38
ответ дан 24 July 2018 в 18:40
  • 1
    Протестировано на Ubuntu 14.04 LTS с Node.js v0.10.30, и он отлично работал. Чтобы получить самую последнюю версию, перейдите к nodejs.org/download . Чтобы просмотреть все выпуски: github.com/joyent/node/releases . – Lucio Paiva 9 August 2014 в 20:12
  • 2
    Для кого это может быть связано, NPM также будет автоматически создаваться и устанавливаться. – Lucio Paiva 9 August 2014 в 20:16
  • 3
    Отличная работа! Это помогло мне! Благодаря! – Akshay Khandelwal 15 December 2016 в 17:35
  • 4
    Просто использовал его для ubuntu 16.04, и он работал как шарм. – Mubashar Abbas 29 March 2017 в 17:59

вот команды

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - sudo apt-get install -y nodejs
0
ответ дан 24 July 2018 в 18:40

Другие вопросы по тегам:

Похожие вопросы: