Condividi tramite


Installare .NET in Linux usando uno script di installazione o estraendo i file binari

Questo articolo illustra come installare .NET SDK o il runtime di .NET in Linux usando lo script di installazione o estraendo i file binari. Per un elenco delle distribuzioni che supportano lo strumento di gestione pacchetti predefinito, vedere Installare .NET in Linux.

Installare l'SDK (che include il runtime) se si vogliono sviluppare app .NET. Se si vogliono solo eseguire app, è sufficiente installare il runtime. Se si installa il runtime, è consigliabile installare il runtime di ASP.NET Core, perché include sia il runtime di .NET che quello di ASP.NET Core.

Usare i comandi dotnet --list-sdks e dotnet --list-runtimes per vedere quali sono le versioni installate. Per altre informazioni, vedere Come verificare che .NET sia già installato.

Versioni di .NET

Esistono due tipi di versioni supportate, LTS (Long Term Support) e Standard Term Support (STS). La qualità di tutte le versioni è identica. L'unica differenza consiste nella lunghezza del supporto. Le versioni LTS ottengono il supporto gratuito e le patch per tre anni. Le versioni stS ottengono supporto gratuito e patch per due anni. Per altre informazioni, vedere i criteri di supporto .NET.

La tabella seguente elenca lo stato di supporto di ciascuna versione di .NET (e .NET Core):

✔️ Supportato ❌ Fine del supporto
10 (LTS) 7
9 (STS) 6
8 (LTS) 5
3.1
3,0
2.2
2.1
2.0
1.1
1.0

Dipendenze

È possibile che quando si installa .NET, potrebbero non essere installate dipendenze specifiche, ad esempio quando si installa manualmente. L'elenco seguente illustra in dettaglio le distribuzioni linux supportate da Microsoft e con dipendenze che potrebbe essere necessario installare. Per altre informazioni, vedere la pagina della distribuzione:

Per altre informazioni generali sulle dipendenze, vedere l'articolo sulle applicazioni Linux autonome.

Dipendenze di RPM

Se la distribuzione non è stata elencata in precedenza ed è basata su RPM, potrebbero essere necessarie le dipendenze seguenti:

  • glibc
  • libgcc
  • certificati CA
  • openssl-libs
  • libstdc++
  • libicu
  • tzdata
  • krb5-libs

Dipendenze di DEB

Se la distribuzione non è stata elencata in precedenza ed è basata su debian, potrebbero essere necessarie le dipendenze seguenti:

  • libc6
  • libgcc1
  • libgssapi-krb5-2
  • libicu70
  • libssl3
  • libstdc++6
  • zlib1g

Installazione con script

Gli script dotnet-install vengono usati per l'automazione e le installazioni non amministrative dell'SDK e del runtime. È possibile scaricare lo script da https://dot.net/v1/dotnet-install.sh. Quando .NET viene installato in questo modo, è necessario installare le dipendenze richieste dalla distribuzione Linux. Usare i collegamenti disponibili nell'articolo Installare .NET in Linux per la propria specifica distribuzione Linux.

Importante

Per eseguire lo script è necessario Bash.

È possibile scaricare lo script con wget:

wget https://dot.net/v1/dotnet-install.sh -O dotnet-install.sh

In alternativa, con curl:

curl -L https://dot.net/v1/dotnet-install.sh -o dotnet-install.sh

Prima di eseguirlo, assicurarsi di concedere l'autorizzazione per l'esecuzione di questo script come eseguibile:

chmod +x ./dotnet-install.sh

Per impostazione predefinita, lo script installa la versione più recente dell'SDK LTS (Long Term Support ), ovvero .NET 10. Per installare l'ultima versione, che potrebbe non essere una versione LTS, usare il parametro --version latest.

./dotnet-install.sh --version latest

Per installare il runtime di .NET anziché l'SDK, usare il parametro --runtime.

./dotnet-install.sh --version latest --runtime aspnetcore

È possibile installare una versione principale specifica usando il parametro --channel per indicare la versione specifica. Il comando seguente installa .NET 9.0 SDK.

./dotnet-install.sh --channel 9.0

Per ulteriori informazioni, vedere il riferimento agli script dotnet-install.

Per abilitare .NET nella riga di comando, vedere Impostare le variabili di ambiente a livello di sistema.

Per informazioni su come usare l'interfaccia della riga di comando di .NET, vedere Panoramica dell'interfaccia della riga di comando di .NET.

Installazione manuale

In alternativa agli strumenti di gestione pacchetti, è possibile scaricare e installare manualmente l'SDK e il runtime. L'installazione manuale viene comunemente usata nell'ambito dei test di integrazione continua o in una distribuzione Linux non supportata. Per uno sviluppatore o un utente, è preferibile usare uno strumento di gestione pacchetti.

Scaricare una versione binaria per l'SDK o il runtime da uno dei siti seguenti. .NET SDK include il runtime corrispondente:

Estrarre il file scaricato e usare il comando export per impostare DOTNET_ROOT sul percorso della cartella estratta e quindi assicurarsi che .NET sia in PATH. L'esportazione di DOTNET_ROOT rende disponibili i comandi dell'interfaccia della riga di comando di .NET nel terminale. Per altre informazioni sulle variabili di ambiente .NET, vedere Variabili di ambiente di .NET SDK e dell'interfaccia della riga di comando.

È possibile estrarre nella stessa cartella versioni diverse di .NET, che coesistono affiancate.

Esempio

I comandi seguenti usano Bash per impostare la variabile di ambiente DOTNET_ROOT sulla directory di lavoro corrente seguita da .dotnet. Se la directory non esiste, verrà creata. La variabile di ambiente DOTNET_FILE è il nome file della versione binaria di .NET da installare. Questo file viene estratto nella directory DOTNET_ROOT. Sia la directory DOTNET_ROOT che la relativa sottodirectory tools vengono aggiunte alla variabile di ambiente PATH.

Importante

Se si eseguono questi comandi, ricordarsi di modificare il valore DOTNET_FILE nel nome del file binario .NET scaricato.

DOTNET_FILE=dotnet-sdk-9.0.306-linux-x64.tar.gz
export DOTNET_ROOT=$(pwd)/.dotnet

mkdir -p "$DOTNET_ROOT" && tar zxf "$DOTNET_FILE" -C "$DOTNET_ROOT"

export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools

È possibile installare più versioni di .NET nella stessa cartella.

È anche possibile installare .NET nella home directory identificata dalla variabile HOME o dal percorso ~:

export DOTNET_ROOT=$HOME/.dotnet

Per informazioni su come usare l'interfaccia della riga di comando di .NET, vedere Panoramica dell'interfaccia della riga di comando di .NET.

Verificare i file binari scaricati

Dopo aver scaricato un programma di installazione o la versione binaria, verificare che il file non sia stato modificato o danneggiato. È possibile verificare il checksum nel computer e quindi confrontarlo con ciò che è stato segnalato nel sito Web di download.

Quando si scarica il file da una pagina di download ufficiale, viene visualizzato il checksum per il file in una casella di testo. Selezionare il pulsante Copia per trasferire il valore del checksum nella clipboard.

La pagina di download di .NET con checksum

Usare il comando sha512sum per stampare il checksum del file scaricato. Ad esempio, il comando seguente segnala il checksum del file dotnet-sdk-9.0.306-linux-x64.tar.gz :

$ sha512sum dotnet-sdk-9.0.306-linux-x64.tar.gz
bbb6bdc3c8048e7cc189759b406257839e7d4bd6b8b1ba4bcdaeea8f92340e6855231043dd73f902130ca5357af72b810bb51a4da4d1315a2927ff85f831f1d5  dotnet-sdk-9.0.306-linux-x64.tar.gz

Confrontare il checksum con il valore fornito dal sito di download.

Usare un file di checksum per la convalida

Le note sulla versione di .NET contengono un collegamento a un file di checksum che è possibile usare per convalidare il file scaricato. I passaggi seguenti descrivono come scaricare il file di checksum e convalidare un file binario di installazione di .NET:

  1. La pagina delle note sulla versione per .NET 9 in GitHub contiene https://github.com/dotnet/core/tree/main/release-notes/9.0#releases una sezione denominata Releases. La tabella in questa sezione è collegata ai file download e checksum per ogni versione di .NET 9. L'immagine seguente mostra la tabella di versione .NET 8 come riferimento:

    Tabella delle note sulla versione di GitHub per .NET

  2. Selezionare il collegamento per la versione di .NET scaricata.

    La sezione precedente usa .NET SDK 9.0.306, che si trova nella versione .NET 9.0.10.

  3. Nella pagina della versione è possibile visualizzare la versione di .NET Runtime e .NET SDK e un collegamento al file di checksum. L'immagine seguente mostra la tabella di versione .NET 8 come riferimento:

    Tabella di download con checksum per .NET

  4. Fare clic con il pulsante destro del mouse sul collegamento Checksum e copiarlo negli Appunti.

  5. Aprire un terminale.

  6. Usare curl -O {link} per scaricare il file di checksum.

    Sostituire il collegamento nel seguente comando con il collegamento copiato.

    curl -O https://builds.dotnet.microsoft.com/dotnet/checksums/9.0.10-sha.txt
    
  7. Con il file di checksum e il file della versione di .NET scaricati nella stessa directory, usare il comando sha512sum -c {file} --ignore-missing per convalidare il file scaricato.

    Quando la convalida viene superata, viene visualizzato il file stampato con lo stato OK:

    $ sha512sum -c 9.0.10-sha.txt --ignore-missing
    dotnet-sdk-9.0.306-linux-x64.tar.gz: OK
    

    Se il file viene contrassegnato come FAILED, il file scaricato non è valido e non deve essere usato.

    $ sha512sum -c 9.0.10-sha.txt --ignore-missing
    dotnet-sdk-9.0.306-linux-x64.tar.gz: FAILED
    sha512sum: WARNING: 1 computed checksum did NOT match
    sha512sum: 9.0.10-sha.txt: no file was verified
    

Impostare le variabili di ambiente a livello di sistema

Se è stato usato lo script di installazione precedente, le variabili impostate si applicano solo alla sessione del terminale corrente. Aggiungili al tuo profilo della shell. Sono disponibili molte shell diverse per Linux e ognuna ha un profilo diverso. Ad esempio:

  • Shell Bash: ~/.bash_profile o ~/.bashrc
  • Shell Korn: ~/.kshrc o .profile
  • Shell Z: ~/.zshrc o .zprofile

Impostare le due variabili di ambiente seguenti nel profilo della shell:

  • DOTNET_ROOT

    Questa variabile è impostata sulla cartella in cui è stato installato .NET, ad esempio $HOME/.dotnet:

    export DOTNET_ROOT=$HOME/.dotnet
    
  • PATH

    Questa variabile deve includere sia la cartella DOTNET_ROOT sia la cartella DOTNET_ROOT/tools:

    export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools
    

Passaggi successivi