Come installare NodeJS 4 usando apt?


Risposte:


75

Le istruzioni sono state prese da qui: https://github.com/nodesource/distributions

wget -qO- https://deb.nodesource.com/setup_4.x | sudo bash -

e poi:

sudo apt-get install nodejs

Ecco le versioni del sistema:

ubuntu@424c7702-0947-e7c7-c532-dfec484fc109:~$ lsb_release -r
Release:    15.04
ubuntu@424c7702-0947-e7c7-c532-dfec484fc109:~$ node -v
v4.0.0
ubuntu@424c7702-0947-e7c7-c532-dfec484fc109:~$ npm -v
2.14.2

@jarserver - "I seguenti pacchetti hanno dipendenze non soddisfatte: nodejs: Dipende da: rlwrap ma non è installabile E: Impossibile correggere i problemi, sono stati conservati pacchetti rotti." - Errore durante apt-get install. Come risolvere questo?
Kumar Sambhav,

@KumarSambhav sembra che il database del pacchetto si trovi in ​​uno stato non funzionante. Cerca nel sito come correggere uno stato non funzionante.
battlemidget

Questo non funziona per me su Ubuntu 15.10 Installa sempre v0.10.25 (versione inferiore rispetto all'OP, quindi non ho idea di cosa stia succedendo ...)
HankScorpio

@HankScorpio Sembra che apt-repo non sia stato aggiornato. Prova a seguire le istruzioni di installazione manuale ( github.com/nodesource/distributions#manual-installation ) e verifica se il problema è stato risolto.
jarsever,

Sì, questo è il problema. Mancavano alcune chiavi GPG (qualunque esse fossero), quindi apt-get updatefalliva ogni volta. Ho usato y-ppa-managerper risolvere il problema e ora ho l'ultima versione di NodeJS 4.
HankScorpio

37

Node Version Manager ha sempre le ultime novità

Sono fermamente convinto che l' installazione di Node con Node Version Manager sia l'opzione migliore su Ubuntu, se la stai installando su un computer in cui intendi fare lo sviluppo (anziché un server di produzione).

Quando si installa attraverso i repository ufficiali, si finisce con qualcosa di terribilmente obsoleto. Puoi sempre aggiungere un PPA, ma finirai comunque con permessi disordinati in cui l'installazione globale di moduli da npm richiede i privilegi di amministratore.

Con NVM, tutto viene conservato nella cartella principale (quindi non è necessario sudo) e puoi installare più versioni di Node (incluso 4.0) e passare da una all'altra con facilità.

Installazione con NVM

Tratto dalle istruzioni di installazione di NVM :

Prendi l'ultima copia di NVM (potrebbe essere necessario sudo apt-get install curlprima):

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

Di 'alla tua shell di usare nvm(potresti voler aggiungere questo in ~/.bashrcmodo che accada automaticamente in futuro):

source ~/.nvm/nvm.sh

Quindi installare l'ultima versione del nodo:

nvm install 4.0

E dì a nvm quale versione di Node vuoi usare:

nvm use 4.0

Potresti anche voler aggiungere la nvm use 4.0linea alla tua ~/.bashrc, in modo da non dover scegliere una versione del nodo ogni volta che avvii il tuo terminale.

Ora se lo controlli which nodedovrebbe darti un percorso all'eseguibile del nodo nella tua cartella home. Correre node --versiondovrebbe dirti che stai correndo v4.0.0.


6
Non penso che il commento disordinato sui permessi sia accurato, installo il nodo dal repository apt nodesource e posso eseguire e installare i moduli del nodo nella mia home directory locale (inclusa l'opzione globale -g). È sufficiente aggiornare ~ / .npmrc per definire la directory del prefisso.
battlemidget

3
Ah, questo è un punto molto giusto. Sono ancora un fan di nvm per l'aspetto della gestione delle versioni, ma se non è questo il tuo caso, impostare un prefisso ~/.npmrcsembra sicuramente il modo giusto di gestire le autorizzazioni per i moduli globali.
Michael Martin-Smucker,

Credo che la nota "obsoleta" sui repository ufficiali, nella risposta sia un po '... obsoleta ;-) I repository ufficiali ora supportano qualsiasi versione rilasciata pubblicamente su un treno di rilascio supportato - ci sono repository per la versione 6, 7 e anche 8, ed è stato così da almeno la mia risposta di seguito (15/10)
Guss

36

Con kudus a @jarsever, personalmente non mi iscrivo al paradigma " curl | sh ".

Se senti lo stesso tipo di disagio che provo quando mi viene chiesto di reindirizzare un testo arbitrario da Internet e nel processo di shell di un account di root, allora potresti voler provare questo per lo stesso effetto ma con (leggermente) meno paura, incertezza e dubbio:

version=4
apt-key adv --keyserver keyserver.ubuntu.com --recv 68576280
apt-add-repository 'deb https://deb.nodesource.com/node_${version}.x precise main'
apt-get update
apt-get install nodejs

Credo che il processo dovrebbe essere chiaro e puoi anche fare lo stesso tramite l'interfaccia utente delle proprietà del software di Ubuntu.


C'è qualche svantaggio nel farlo in questo modo? Sembra l'opzione migliore ...
Catskul,

6
È più di una riga e ti permette di conoscere il tuo sistema? ... Ad alcune persone non piace, penso, è l'unico modo per spiegare il curl|shfenomeno.
Guss,

3
Oltre a conoscere il gestore di pacchetti del tuo sistema operativo, è anche un problema di sicurezza. curl|shestrae uno script da un server e lo esegue direttamente in una shell. Personalmente mi fido di nodesource, ma non è una grande abitudine entrare. unix.stackexchange.com/questions/46286/…
blanket_cat

E lì ti chiedo di convogliarlo sudo -E bash. Funziona come root. Consiglio vivamente di leggere e comprendere lo script, se lo installi dalla rete in una shell di root.
blanket_cat,

1
In generale, installando un pacchetto deb si corre lo stesso rischio che eseguire il piping di Internet in una shell di root. Detto questo, uno implica che tu capisca il tuo sistema, l'altro implica che non lo fai - e questa è una differenza enorme.
Guss,

0

Mi piace usare nodeenv da pypi ( https://pypi.python.org/pypi/nodeenv ), si installa il pacchetto usando pip, quindi si imposta un "nodo / virtualenv" e gli si dice di installare una versione precompilata, veloce e semplice . Paolo


-1

Questo ha funzionato per me

echo 'export PATH=$HOME/local/bin:$PATH' >> ~/.bashrc
. ~/.bashrc
mkdir ~/local
mkdir ~/node-latest-install
cd ~/node-latest-install
curl http://nodejs.org/dist/node-latest.tar.gz | tar xz --strip-components=1
./configure --prefix=~/local
make install 
curl https://www.npmjs.org/install.sh | sh

Fonte: https://gist.github.com/isaacs/579814


1
La domanda riguarda in particolare come installare NodeJS con Apt .
David Foerster,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.