Installare Node.js su Ubuntu 16.04

Guida completa all'installazione e alla gestione delle versioni di Node.js.

Logo

Node.js è un ambiente di esecuzione che permette di eseguire JavaScript al di fuori del browser — perfetto per creare server, strumenti CLI, API, elaborare file, sviluppare applicazioni di rete e persino applicazioni desktop (tramite Electron).
È una delle scelte più diffuse per lo sviluppo backend su VPS o server dedicati.

Ubuntu 16.04 (Xenial) risale al 2016, quindi i repository predefiniti includono una versione molto datata di Node.js (4.2.6).
Vedremo tre metodi pratici per installare versioni moderne e supportate.

Opzione 1: dai repository Ubuntu (rapido, ma obsoleto)

Questo metodo installa Node.js 4.2.6 — adatto solo per compatibilità con codice legacy.

  1. Aggiornare l'indice dei pacchetti:

    sudo apt-get update
    
  2. Installare Node.js:

    sudo apt-get install nodejs
    
  3. Installare npm (gestore di pacchetti):

    sudo apt-get install npm
    

Verificare le versioni:

nodejs -v   # → v4.2.6
npm -v      # → ~3.x

Nota: Il binario si chiama nodejs (non node) per evitare conflitti con un altro pacchetto. Per comodità, crea un symlink:

sudo ln -s /usr/bin/nodejs /usr/bin/node

Evita questo metodo per i nuovi progetti — la versione 4 non è più supportata da tempo.

Opzione 2: tramite NodeSource PPA (consigliato per Ubuntu 16.04)

NodeSource mantiene pacchetti Node.js aggiornati per Ubuntu.

  1. Installare curl se non è presente:

    sudo apt-get install curl
    
  2. Aggiungere il repository NodeSource per la versione desiderata (sostituisci 10.x con 12.x, 14.x, ecc.):

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

    Scelte comuni:

    • v12.x: setup_12.x
    • v14.x: setup_14.x
    • v16.x: setup_16.x (ultima versione supportata su 16.04)
  3. Installare Node.js:

    sudo apt-get install -y nodejs
    

Verificare:

node -v     # ad esempio v10.24.1
npm -v      # ad esempio 6.14.12

Per la compilazione di moduli nativi (necessaria per alcuni pacchetti):

sudo apt-get install -y build-essential

I nostri prodotti e servizi

Hosting WebServizi di hosting affidabili per siti web di qualsiasi dimensione.
Ordina
VPSInfrastruttura cloud flessibile con accesso root completo.
Ordina
Server DedicatiServer dedicati per le massime prestazioni.
Ordina

Opzione 3: con nvm (Node Version Manager) — la più flessibile

nvm permette di installare e passare da una versione di Node.js all'altra senza privilegi di root e senza conflitti.

  1. Installare gli strumenti di compilazione:

    sudo apt-get update
    sudo apt-get install -y build-essential libssl-dev
    
  2. Installare nvm (versione più recente, aggiornata al 2026):

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

    oppure

    wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
    
  3. Caricare nvm nella shell corrente:

    source ~/.bashrc
    # oppure riavvia il terminale
    
  4. Elencare le versioni disponibili:

    nvm ls-remote
    
  5. Installare la versione desiderata (ad esempio l'ultima LTS):

    nvm install 18
    nvm install 20
    
  6. Passare a una versione:

    nvm use 18
    
  7. Impostare una versione predefinita (caricata automaticamente nelle nuove sessioni):

    nvm alias default 18
    

Verificare:

node -v
npm -v

Vantaggi di nvm:

  • Più versioni di Node in esecuzione contemporaneamente
  • Cambio istantaneo per progetto
  • Nessun sudo necessario per l'installazione
  • npm si aggiorna automaticamente con Node

Comandi utili e suggerimenti

  • Aggiornare npm all'ultima versione:
npm install -g npm@latest
  • Installare strumenti globali (pm2, yarn, nodemon, ecc.):
npm install -g pm2 yarn nodemon
  • Evitare gli errori EACCES con le installazioni globali — configurare una directory di proprietà dell'utente:
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.profile
source ~/.profile
  • Informazioni rapide sulla versione in qualsiasi progetto:
node -p "process.versions"

Aiuto

Hai domande o ti serve una mano? Scrivici tramite il sistema di ticket — siamo sempre qui per aiutarti!

Hai bisogno di aiuto?I nostri ingegneri ti aiuteranno gratuitamente con qualsiasi domanda in pochi minutiContattaci