Come posso aggiornare il mio nodeJS all'ultima versione?


628

Ho installato nodeJS su Ubuntu con il seguente codice

sudo apt-get install nodejs

Dato che sono un nuovo utente di Ubuntu, ho eseguito anche questo codice

sudo apt-get install npm

Ora quando scrivo

 nodejs --version

Mostra

v0.6.19

Ho controllato e ho visto l'ultima versione di nodeJS 0.10.26

Come posso aggiornare la mia versione di nodeJS a 0.10.26?

Ci ho provato

 sudo apt-get install <packagename>
 sudo apt-get install --only-upgrade <packagename>

ma senza fortuna.


2
È meglio usare nvm per installare nodejs. Sta per "Node Version Manager". Puoi facilmente installare più versioni di nodejs, passare da una all'altra e impostare un valore predefinito.
Mina Michael,

Risposte:


1108

Utilizzare n module da npm per aggiornare il nodo

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

Per eseguire l'aggiornamento alla versione più recente (e non l'attuale stabile), è possibile utilizzare

sudo n latest

Per annullare:

sudo apt-get install --reinstall nodejs-legacy     # fix /usr/bin/node
sudo n rm 6.0.0     # replace number with version of Node that was installed
sudo npm uninstall -g n

Trovato nel blog di David Walsh http://davidwalsh.name/upgrade-nodejs


11
questa dovrebbe essere la risposta corretta. nè un pacchetto helper di nodo che installa o aggiorna una determinata versione di node.js.
Martin,

40
Consiglio vivamente di non farlo in un caso di produzione. Può seriamente rovinare tutto con i tuoi pacchetti npm globali e la tua capacità di installarne di nuovi.
Loourr,

12
ma ancora nodejs --version sow 0.10.25
Mansuu ....


14
Non funziona - dopo aver seguito i passaggi, node -vmi ha dato ancora la versione 6, non 10.
Tomáš Zato

370

Le istruzioni di installazione complete sono state caricate qui da Nodesource. Viene copiato di seguito per riferimento. Le istruzioni sono le stesse per l'aggiornamento all'ultima versione.

Node.js v12.x :

NOTA: se stai usando Ubuntu Precise o Debian Wheezy, potresti voler leggere sull'esecuzione di Node.js> = 6.x su distro precedenti

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

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

Node.js v11.x :

NOTA: se stai usando Ubuntu Precise o Debian Wheezy, potresti voler leggere sull'esecuzione di Node.js> = 6.x su distro precedenti

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

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

Node.js v10.x :

NOTA: se stai usando Ubuntu Precise o Debian Wheezy, potresti voler leggere sull'esecuzione di Node.js> = 6.x su distro precedenti

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

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

Node.js v9.x :

NOTA: se stai usando Ubuntu Precise o Debian Wheezy, potresti voler leggere sull'esecuzione di Node.js> = 6.x su distro precedenti

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

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

Node.js v8.x :

NOTA: se stai usando Ubuntu Precise o Debian Wheezy, potresti voler leggere sull'esecuzione di Node.js> = 6.x su distro precedenti

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

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

Node.js v7.x :

NOTA: i pacchetti Debian Wheezy e Ubuntu Precise NON sono disponibili per questa versione. Fare riferimento a Node.js in esecuzione> = 4.x su distribuzioni precedenti

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

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

Node.js v6.x :

NOTA: se stai usando Ubuntu Precise o Debian Wheezy, potresti voler leggere sull'esecuzione di Node.js> = 4.x su distribuzioni precedenti .

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

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

Node.js v5.x :

NOTA: se stai usando Ubuntu Precise o Debian Wheezy, potresti voler leggere sull'esecuzione di Node.js> = 4.x su distribuzioni precedenti .

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

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

Node.js v4.x :

NOTA: se stai usando Ubuntu Precise o Debian Wheezy, potresti voler leggere sull'esecuzione di Node.js> = 4.x su distribuzioni precedenti .

# 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

Node.js v0.12 :

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

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

Node.js v0.10 :

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

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

io.js v3.x :

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

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

io.js v2.x :

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

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

io.js v1.x :

Nota: questo ramo di io.js non è gestito attivamente e non è raccomandato per l'uso in produzione.

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

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

Consiglio di rimuovere le informazioni obsolete o di spostarle in fondo alla domanda, in modo che le informazioni correnti vengano lette per prime.
k0pernikus,

2
Questa è la risposta che ha funzionato per me!
eri0o

1
Per tutti gli idioti confusi come me, sembra che l'esecuzione dell'installazione sostituirà efficacemente ciò che hai mai avuto prima. Quindi penso che sia possibile eseguire un aggiornamento o un downgrade con questo processo. Ho aggiornato da v8 a v10 e ho notato questo messaggio nei registri di installazione:, in Unpacking nodejs (10.15.0-1nodesource1) over (8.12.0-1nodesource1) ...esecuzione node -vdopo l'installazione visualizza felicemente v10.15.0qual è quello che voglio.
icc97,

2
curl {anything} | sudo bash -è una terribile pratica di sicurezza
krubo il

1
@krubo sono d'accordo. L'utente deve esaminare lo script prima di eseguirlo. Tuttavia, è da una fonte affidabile ( nodesource.com) ed il collegamento è garantito da HTTPS, per cui v'è una adeguata quantità di fiducia è possibile inserire in questi script. Ma sì, in generale, controlla gli script prima di sudo bash
inviarlo

28

Questo PPA non è aggiornato e non è più gestito; dovresti considerare altre risposte invece di questa.

Puoi installare l'ultima versione da PPA:

sudo add-apt-repository ppa:chris-lea/node.js  
sudo apt-get update  
sudo apt-get install nodejs

13
Penso che questa sarebbe una risposta migliore se tu (anche) fornissi un modo non-ppa per farlo, i ppa sono notoriamente noti per essere obsoleti e non mantenuti, essenzialmente rendendo la risposta inutile.
pzkpfw,

@ bigbadonk420 sì, se hai appena cercato su Google, probabilmente è meglio saltare la prima riga e fare l'aggiornamento e l'installazione per me con il nodo 0.10.34
Capaj

@Capaj no. che non ha aiutato ...
deostroll il

6
Non raccomandare più l'uso di questo ppa, sembra essere piuttosto obsoleto.
Kzqai,

19

Uso NVM per gestire le mie versioni di Node. Molto semplice da installare e facile da usare.

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm

Per installare NVM a livello globale invece, utilizzare il seguente comando curl invece di quello sopra (e presumibilmente non usare il secondo comando ma usare il terzo)

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | NVM_DIR=/usr/local/nvm bash

Quindi utilizzare nvm install stable(o inserire un numero di versione anziché stable) per ottenere l'ultima / una versione specifica di Node. Utilizzare nvm use stable(o un numero di versione specifico) per utilizzare quella versione del nodo. Utilizzare nvm lsper vedere quali versioni di Node sono state installate e nvm uninstall stable(o un numero di versione specifico) per rimuovere una versione specifica di Node.

Fonti: installazione , utilizzo


Sebbene ciò possa teoricamente rispondere alla domanda, sarebbe preferibile includere qui le parti essenziali della risposta e fornire il collegamento come riferimento.
Warren Hill

Mi scuso per il mio noobness. Risposta aggiornata
amnah

il percorso di arricciatura indicato non funziona. Ho usato "curl raw.githubusercontent.com/creationix/nvm/v0.13.1/install.sh | bash" come indicato in github.com/creationix/nvm
Senthil

Non dimenticare di aggiornare la parte dell'URL all'ultima versione di nvm
Nidhin David,

16

Consiglio anche di usare nvm, e anche di rimuovere la versione già installata per evitare conflitti nel terminale

sudo apt purge nodejs npm

quindi installa nvm e usalo

Spiegazione video

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

per scaricare e installare nvm

nvm install node

dovrebbe scaricare e installare la versione più recente del nodo.

Per aggiornare il nodo in seguito basta

nvm install node
nvm alias default node

4
Questa dovrebbe essere l'unica risposta accettata - nel caso in cui desideri avere una configurazione del nodo sana e aggiornata in Ubuntu.
José L. Patiño,

Questo funziona anche al meglio per me (ho nodij piuttosto antichi sul nostro EC2 e ho provato molti suggerimenti e solo questo ha funzionato). Anche il 100% è d'accordo con il commento sopra!
Shan Dou,

nvminstalla Node.js in base all'utente. L'uso nvmnon ti darà un nodecomando a livello di sistema . Quindi consiglierei di non rimuovere il sistema / globale in nodemodo che gli script in esecuzione come un altro utente possano ancora eseguire node.
d4nyll,

4

Ho provato gli stessi comandi dell'elenco sul mio Ubuntu 14.04 ma stava ancora generando un errore.

I comandi che ho eseguito sono stati:

sudo add-apt-repository ppa:chris-lea/node.js  
sudo apt-get update  
sudo apt-get install nodejs

e l'errore che stavo ottenendo:

Invalid version 0.12.2
Line 299: curl not found in /bin/n

Quello che ho capito era l'utilità di arricciatura non è stata installata sul mio sistema operativo.

Ho eseguito il comando:

apt-get install curl

(usa sudocome prefisso se non lo sei su)

e poi ripetuto i passaggi suggeriti in risposta e funziona;)


2

Questo installa l'ultimo nodo v0.12. * Da nodesource.

sudo apt-get install -y curl
curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -
sudo apt-get install -y nodejs

Per il nodo v4.x

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

2
Stai installando il nodo da zero? La domanda riguardava l'aggiornamento non l'installazione
Green

2

L'uso di nvm è il metodo preferito. Prima installazione nvm:

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

Quindi installare nodejs:

nvm install node

Adesso puoi cambiare facilmente versione del nodo.


2

NVM (Node Version manager) con --lts

NVM è stato menzionato su: https://askubuntu.com/a/441527/52975 ma qui è riportato un esempio di utilizzo più completo, inclusa la --ltsversione sana .

NVM installa sia l'ultimo nodo stabile che npm per te

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

Ora provalo con un pacchetto fittizio:

npm install --global vaca
vaca

Dal momento che il sourcing deve essere fatto per ogni nuova shell, gli hack di script di installazione aggiungono un po 'di sourcing automatico alla fine del tuo .barshrc. Funziona, ma preferisco rimuovere quello aggiunto automaticamente e aggiungere il mio:

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

vantaggi:

  • consente di utilizzare più versioni di Node e senza sudo

  • è analogo a Ruby RVM e Python Virtualenv, best practice ampiamente considerata nelle comunità di Ruby e Python

  • scarica un binario precompilato ove possibile, e in caso contrario scarica il sorgente e ne compila uno per te

Possiamo facilmente cambiare le versioni dei nodi con:

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

È quindi possibile utilizzare un .nvmrcfile tracciato git per indicare la versione del nodo richiesta per un determinato progetto: https://stackoverflow.com/questions/24869959/how-do-i-specify-a-local-version-of-node-for -a-progetto / 54503474 # 54503474

Testato in Ubuntu 17.10.


1

Ti suggerisco di rimuovere prima tutte le installazioni di nodejs, quindi eseguire lo script seguente una volta modificato con la versione desiderata di nodejs e la sua directory padre di installazione

vedere tutte le versioni disponibili di nodejs

https://nodejs.org/dist/

lo script di seguito ti consentirà di installare una di quelle versioni di nodejs su Linux o OSX

#!/bin/bash

#     usage :
#
#     edit two vars in below :  NODE_VER  and  CODE_PARENT_DIR
#
# ... execute this script as yourself unless you choose a root owned value for var CODE_PARENT_DIR
#     whichever id you execute this as determines the id you will issue npm commands as :  npm install -g foo-bar
#
#     NOTE - nodejs comes bundled with npm ... so no need to do separate npm install
#            this scripts runs fine on linux or OSX

# ...  copy all the lines starting here  .. top of copy  ....   and ending ... end of copy  ...
#      and paste into your ~/.bashrc file so proper env vars get set 

# ............... top of copy  ........................  install_node.sh

# export NODE_VER=v7.2.0  # see available versions at https://nodejs.org/dist/
# export NODE_VER=v8.5.0  # edit this line next time you need to update nodejs  
export NODE_VER=v9.3.0  # edit this line next time you need to update nodejs

# ...  pick parent dir of nodejs install  ... comment out or remove ONE of below
# export CODE_PARENT_DIR=/opt/code  # root owned dir ... requires you to sudo prior to npm install going forward
export CODE_PARENT_DIR=${HOME}    # RECOMMENDED execute as yourself including npm install

# ......... following env vars are OK no edits needed ... only ever need to edit above vars

curr_OS=$( uname )

echo curr_OS $curr_OS

if [[ "${curr_OS}" == "Darwin" ]]; then

    OS_ARCH=darwin-x64

elif [[ "${curr_OS}" == "Linux" ]]; then

    OS_ARCH=linux-x64
else
    echo "ERROR - failed to recognize OS $curr_OS"
    exit 5
fi

if [[ -z ${CODE_PARENT_DIR} ]]; then

    echo "ERROR - failed to see env var CODE_PARENT_DIR"
    exit 5
fi

export NODE_CODEDIR=${CODE_PARENT_DIR}/nodejs
export COMSUFFIX=tar.gz
export NODE_NAME=node-${NODE_VER}
export NODE_PARENT=${NODE_CODEDIR}/${NODE_NAME}-${OS_ARCH} 

export PATH=${NODE_PARENT}/bin:${PATH}
export NODE_PATH=${NODE_PARENT}/lib/node_modules

# ............... end of copy  ........................  install_node.sh

# copy and paste above from ... top of copy ... to here into your file ~/.bashrc   

echo
echo "NODE_CODEDIR $NODE_CODEDIR<--"
echo

echo "mkdir -p ${NODE_CODEDIR}"
echo
      mkdir -p ${NODE_CODEDIR}
echo

echo "cd ${NODE_CODEDIR}"
      cd ${NODE_CODEDIR}
echo

# this is compiled code NOT source

[ -f ${NODE_NAME}-${OS_ARCH}.${COMSUFFIX} ] && rm ${NODE_NAME}-${OS_ARCH}.${COMSUFFIX} # if file exists remove

echo "wget -q --show-progress https://nodejs.org/download/release/${NODE_VER}/${NODE_NAME}-${OS_ARCH}.${COMSUFFIX}"
      wget -q --show-progress https://nodejs.org/download/release/${NODE_VER}/${NODE_NAME}-${OS_ARCH}.${COMSUFFIX}
echo

echo "tar -C ${NODE_CODEDIR} -xf ${NODE_NAME}-${OS_ARCH}.${COMSUFFIX}"
      tar -C ${NODE_CODEDIR} -xf ${NODE_NAME}-${OS_ARCH}.${COMSUFFIX}
echo

[ -f ${NODE_NAME}-${OS_ARCH}.${COMSUFFIX} ] && rm ${NODE_NAME}-${OS_ARCH}.${COMSUFFIX} # if file exists remove

# ...........  done ........... #

which node

node --version

# ....  bottom of file   install_node.sh

1

Se l'utilizzo nnon funziona, è possibile installare la versione più recente di nodejs(ovvero la versione 8) eseguendo i seguenti comandi:

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

sudo apt-get install -y nodejs

Ulteriori istruzioni sono qui .


0

Se sei dietro un proxy, potresti avere questo errore quando esegui 'sudo n stable':

Error: invalid version

Devi impostare le variabili env in questo modo:

export HTTP_PROXY=http://your-proxy-url:port
export HTTPS_PROXY=http://your-proxy-url:port

E quindi esegui il comando passando queste variabili all'utente root:

sudo -E n stable


0

Sto cercando di installare tramite NVV, che ha una risposta sopra ma ho riscontrato un errore in Ubuntu 18.04. poi passo attraverso questo processo

sudo apt purge nodejs npm

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

nvm install node

dopo aver eseguito questo comando potresti trovare quell'errore Command 'nvm' not found, did you mean:

in tal caso è possibile eseguire questo comando

source ~/.nvm/nvm.sh

OPPURE puoi inserirlo nel file /.bashrc o ~ / .profile per caricarlo automaticamente

dopodiché puoi passare al processo successivo

nvm install node
nvm alias default node
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.