Installare .NET SDK o .NET Runtime in Debian
Questo articolo descrive come installare .NET in Debian. Quando una versione debian non è supportata, .NET non è più supportato con tale versione. Tuttavia, queste istruzioni possono essere utili per eseguire .NET in tali versioni, anche se non è supportato.
Installare l'SDK (che include il runtime) se si vogliono sviluppare app .NET. In alternativa, se è sufficiente eseguire le app, installare il runtime. Se si installa il runtime, è consigliabile installare il runtime di ASP.NET Core perché include sia runtime .NET che ASP.NET Core.
Usare i dotnet --list-sdks
comandi e dotnet --list-runtimes
per vedere quali versioni sono installate. Per altre informazioni, vedere Come verificare che .NET sia già installato.
Importante
Le installazioni di Gestione pacchetti sono supportate solo nell'architettura x64 . Altre architetture, ad esempio Arm, devono installare .NET con altri mezzi, ad esempio snap, uno script del programma di installazione o un'installazione binaria manuale.
Per altre informazioni sull'installazione di .NET senza gestione pacchetti, vedere uno degli articoli seguenti:
Distribuzioni supportate
La tabella seguente è un elenco delle versioni .NET attualmente supportate e delle versioni di Debian in cui sono supportate. Queste versioni rimangono supportate fino a quando la versione di .NET raggiunge la fine del supporto o la versione di Debian raggiunge la fine della vita.
Debian | .NET |
---|---|
12 | 7, 6 |
11 | 7, 6 |
10 | 7, 6 |
Le versioni seguenti di .NET non sono ❌ più supportate:
- .NET 5
- .NET Core 3.1
- .NET Core 3.0
- .NET Core 2.2
- .NET Core 2.1
- .NET Core 2.0
Installare le versioni di anteprima
Le versioni candidate per l'anteprima e la versione finale di .NET non sono disponibili nei repository di pacchetti. È possibile installare anteprime e rilasciare candidati di .NET in uno dei modi seguenti:
Rimuovere le versioni di anteprima
Quando si usa una gestione pacchetti per gestire l'installazione di .NET, è possibile che si verifichi un conflitto se è stata installata in precedenza una versione di anteprima. La gestione pacchetti può interpretare la versione non di anteprima come una versione precedente di .NET. Per installare la versione non di anteprima, disinstallare prima di tutto le versioni di anteprima. Per altre informazioni sulla disinstallazione di .NET, vedere Come rimuovere .NET Runtime e SDK.
Debian 12
L'installazione con APT può essere eseguita con alcuni comandi. Prima di installare .NET, eseguire i comandi seguenti per aggiungere la chiave di firma del pacchetto Microsoft all'elenco di chiavi attendibili e aggiungere il repository dei pacchetti.
Aprire un terminale ed eseguire i comandi seguenti:
wget https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
Installazione dell'SDK
.NET SDK consente di sviluppare app con .NET. Se si installa .NET SDK, non è necessario installare il runtime corrispondente. Per installare .NET SDK, eseguire i comandi seguenti:
sudo apt-get update && \
sudo apt-get install -y dotnet-sdk-7.0
Importante
Se viene visualizzato un messaggio di errore simile a Non è possibile individuare il pacchetto dotnet-sdk-7.0, vedere la sezione relativa alla risoluzione dei problemi .
Installare il runtime
Il runtime di ASP.NET Core consente di eseguire app realizzate con .NET che non hanno fornito il runtime. I comandi seguenti installano il runtime di ASP.NET Core, che è il runtime più compatibile per .NET. Nel terminale eseguire i comandi seguenti:
sudo apt-get update && \
sudo apt-get install -y aspnetcore-runtime-7.0
Importante
Se viene visualizzato un messaggio di errore simile a Impossibile individuare il pacchetto aspnetcore-runtime-7.0, vedere la sezione relativa alla risoluzione dei problemi .
In alternativa al runtime di ASP.NET Core, è possibile installare .NET Runtime, che non include il supporto di ASP.NET Core: sostituire aspnetcore-runtime-7.0
nel comando precedente con dotnet-runtime-7.0
:
sudo apt-get install -y dotnet-runtime-7.0
Debian 11
L'installazione con APT può essere eseguita con alcuni comandi. Prima di installare .NET, eseguire i comandi seguenti per aggiungere la chiave di firma del pacchetto Microsoft all'elenco di chiavi attendibili e aggiungere il repository dei pacchetti.
Aprire un terminale ed eseguire i comandi seguenti:
wget https://packages.microsoft.com/config/debian/11/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
Installazione dell'SDK
.NET SDK consente di sviluppare app con .NET. Se si installa .NET SDK, non è necessario installare il runtime corrispondente. Per installare .NET SDK, eseguire i comandi seguenti:
sudo apt-get update && \
sudo apt-get install -y dotnet-sdk-7.0
Importante
Se viene visualizzato un messaggio di errore simile a Non è possibile individuare il pacchetto dotnet-sdk-7.0, vedere la sezione relativa alla risoluzione dei problemi .
Installare il runtime
Il runtime di ASP.NET Core consente di eseguire app realizzate con .NET che non hanno fornito il runtime. I comandi seguenti installano il runtime di ASP.NET Core, che è il runtime più compatibile per .NET. Nel terminale eseguire i comandi seguenti:
sudo apt-get update && \
sudo apt-get install -y aspnetcore-runtime-7.0
Importante
Se viene visualizzato un messaggio di errore simile a Impossibile individuare il pacchetto aspnetcore-runtime-7.0, vedere la sezione relativa alla risoluzione dei problemi .
In alternativa al runtime di ASP.NET Core, è possibile installare .NET Runtime, che non include il supporto di ASP.NET Core: sostituire aspnetcore-runtime-7.0
nel comando precedente con dotnet-runtime-7.0
:
sudo apt-get install -y dotnet-runtime-7.0
Debian 10
L'installazione con APT può essere eseguita con alcuni comandi. Prima di installare .NET, eseguire i comandi seguenti per aggiungere la chiave di firma del pacchetto Microsoft all'elenco di chiavi attendibili e aggiungere il repository dei pacchetti.
Aprire un terminale ed eseguire i comandi seguenti:
wget https://packages.microsoft.com/config/debian/10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
Installazione dell'SDK
.NET SDK consente di sviluppare app con .NET. Se si installa .NET SDK, non è necessario installare il runtime corrispondente. Per installare .NET SDK, eseguire i comandi seguenti:
sudo apt-get update && \
sudo apt-get install -y dotnet-sdk-7.0
Importante
Se viene visualizzato un messaggio di errore simile a Non è possibile individuare il pacchetto dotnet-sdk-7.0, vedere la sezione relativa alla risoluzione dei problemi .
Installare il runtime
Il runtime di ASP.NET Core consente di eseguire app realizzate con .NET che non hanno fornito il runtime. I comandi seguenti installano il runtime di ASP.NET Core, che è il runtime più compatibile per .NET. Nel terminale eseguire i comandi seguenti:
sudo apt-get update && \
sudo apt-get install -y aspnetcore-runtime-7.0
Importante
Se viene visualizzato un messaggio di errore simile a Impossibile individuare il pacchetto aspnetcore-runtime-7.0, vedere la sezione relativa alla risoluzione dei problemi .
In alternativa al runtime di ASP.NET Core, è possibile installare .NET Runtime, che non include il supporto di ASP.NET Core: sostituire aspnetcore-runtime-7.0
nel comando precedente con dotnet-runtime-7.0
:
sudo apt-get install -y dotnet-runtime-7.0
Come installare altre versioni
Tutte le versioni di .NET sono disponibili per il download in https://dotnet.microsoft.com/download/dotnet, ma richiedono l'installazione manuale. È possibile provare a usare gestione pacchetti per installare una versione diversa di .NET. Tuttavia, la versione richiesta potrebbe non essere disponibile.
I pacchetti aggiunti ai feed di Gestione pacchetti sono denominati in un formato modificabile, ad esempio: {product}-{type}-{version}
.
product
Tipo di prodotto .NET da installare. Le opzioni valide sono:- dotnet
- aspnetcore
type
Sceglie l'SDK o il runtime. Le opzioni valide sono:- sdk (disponibile solo per il prodotto dotnet )
- runtime
version
Versione dell'SDK o del runtime da installare. Questo articolo fornisce sempre le istruzioni per la versione supportata più recente. Le opzioni valide sono qualsiasi versione rilasciata, ad esempio:- 7.0
- 5.0
- 3.1
- 2.1
È possibile che l'SDK o il runtime che si sta tentando di scaricare non sia disponibile per la distribuzione Linux. Per un elenco delle distribuzioni supportate, vedere Installare .NET in Linux.
Esempi
- Installare il runtime di ASP.NET Core 7.0:
aspnetcore-runtime-7.0
- Installare il runtime di .NET Core 2.1:
dotnet-runtime-2.1
- Installare .NET 5 SDK:
dotnet-sdk-5.0
- Installare .NET Core 3.1 SDK:
dotnet-sdk-3.1
Pacchetto mancante
Se la combinazione di versione del pacchetto non funziona, non è disponibile. Ad esempio, non esiste un ASP.NET Core SDK, i componenti SDK sono inclusi in .NET SDK. Il valore aspnetcore-sdk-7.0
non è corretto e deve essere dotnet-sdk-7.0
. Per un elenco delle distribuzioni linux supportate da .NET, vedere Dipendenze e requisiti di .NET.
Usare APT per aggiornare .NET
Quando è disponibile una nuova versione patch per .NET, è sufficiente aggiornarla tramite APT con i comandi seguenti:
sudo apt-get update
sudo apt-get upgrade
Se è stata aggiornata la distribuzione di Linux dopo l'installazione di .NET, potrebbe essere necessario riconfigurare il repository di pacchetti Microsoft. Eseguire le istruzioni di installazione per la versione di distribuzione corrente per eseguire l'aggiornamento al repository di pacchetti appropriato per gli aggiornamenti .NET.
Risoluzione dei problemi
Questa sezione fornisce informazioni sugli errori comuni che possono verificarsi durante l'uso di APT per installare .NET.
Impossibile trovare il pacchetto
Importante
Le installazioni di Gestione pacchetti sono supportate solo nell'architettura x64 . Altre architetture, ad esempio Arm, devono installare .NET con altri mezzi, ad esempio snap, uno script del programma di installazione o un'installazione binaria manuale.
Per altre informazioni sull'installazione di .NET senza gestione pacchetti, vedere uno degli articoli seguenti:
Impossibile individuare \ Non è stato possibile installare alcuni pacchetti
Se viene visualizzato un messaggio di errore simile a Impossibile individuare il pacchetto {dotnet-package} o Non è stato possibile installare alcuni pacchetti, eseguire i comandi seguenti.
Nel set di comandi seguente sono presenti due segnaposto.
{dotnet-package}
Rappresenta il pacchetto .NET che si sta installando, ad esempioaspnetcore-runtime-7.0
. Viene usato nel comando seguentesudo apt-get install
.{os-version}
Rappresenta la versione di distribuzione attivata. Viene usato nelwget
comando seguente. La versione di distribuzione è il valore numerico, ad esempio20.04
in Ubuntu o10
in Debian.
Prima di tutto, provare a eliminare l'elenco di pacchetti:
sudo dpkg --purge packages-microsoft-prod && sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update
Provare quindi a installare di nuovo .NET. In caso contrario, è possibile eseguire un'installazione manuale con i comandi seguenti:
sudo apt-get install -y gpg
wget -O - https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor -o microsoft.asc.gpg
sudo mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/
wget https://packages.microsoft.com/config/debian/{os-version}/prod.list
sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list
sudo chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg
sudo chown root:root /etc/apt/sources.list.d/microsoft-prod.list
sudo apt-get update && \
sudo apt-get install -y {dotnet-package}
Impossibile recuperare
Durante l'installazione del pacchetto .NET, è possibile che venga visualizzato un errore simile a Failed to fetch ... File has unexpected size ... Mirror sync in progress?
. Questo errore potrebbe significare che il feed di pacchetti per .NET viene aggiornato con le versioni più recenti del pacchetto e che è consigliabile riprovare più tardi. Durante un aggiornamento, il feed del pacchetto non deve essere disponibile per più di 30 minuti. Se si riceve continuamente questo errore per più di 30 minuti, segnalare un problema in https://github.com/dotnet/core/issues.
Dipendenze
Quando si installa con una gestione pacchetti, queste librerie vengono installate automaticamente. Tuttavia, se si installa manualmente .NET o si pubblica un'app autonoma, è necessario assicurarsi che queste librerie siano installate:
- libc6
- libgcc-s1
- libgssapi-krb5-2
- libicu63 (per 10.x)
- libicu67 (per 11.x)
- libicu72 (per 12.x)
- libssl1.1
- libstdc++6
- zlib1g
Le dipendenze possono essere installate con il apt install
comando . Il frammento di codice seguente illustra l'installazione della libc6
libreria:
sudo apt install libc6
Se l'app .NET usa l'assembly System.Drawing.Common , sarà necessario installare anche libgdiplus. Poiché System.Drawing.Common non è più supportato in Linux, funziona solo in .NET 6 e richiede l'impostazione dell'opzione di configurazione di System.Drawing.EnableUnixSupport
runtime.
È possibile installare una versione recente di libgdiplusaggiungendo il repository Mono al sistema.
Passaggi successivi
.NET feedback
The .NET documentation is open source. Provide feedback here.
Commenti e suggerimenti
Invia e visualizza il feedback per