Instalace sady .NET SDK nebo .NET Runtime v Debianu
Tento článek popisuje, jak nainstalovat .NET v Debianu. Pokud verze Debianu přestane být podporována, rozhraní .NET již není s danou verzí podporováno. Tyto pokyny vám ale můžou pomoct s spouštěním .NET v těchto verzích, i když nejsou podporované.
Pokud chcete vyvíjet aplikace .NET, nainstalujte sadu SDK (která zahrnuje modul runtime). Nebo pokud potřebujete spouštět jenom aplikace, nainstalujte modul runtime. Pokud instalujete modul runtime, doporučujeme nainstalovat modul runtime ASP.NET Core, protože zahrnuje modul runtime .NET i ASP.NET Core.
Pomocí příkazů dotnet --list-sdks
dotnet --list-runtimes
můžete zjistit, které verze jsou nainstalovány. Další informace naleznete v tématu Jak zkontrolovat, zda je .NET již nainstalován.
Důležité
Použití správce balíčků k instalaci .NET z kanálu balíčků Microsoft podporuje pouze architekturu x64 . Kanál balíčků Microsoftu nepodporuje jiné architektury, jako je Arm.
Další informace o instalaci .NET bez správce balíčků najdete v jednom z následujících článků:
Podporované distribuce
Následující tabulka obsahuje seznam aktuálně podporovaných verzí .NET a verzí Debianu, na kterých jsou podporované. Tyto verze zůstanou podporovány, dokud verze rozhraní .NET nedosáhne konce podpory nebo verze Debianu dosáhne konce životnosti.
Debian | .NET |
---|---|
12 | 9, 8 |
Následující verze rozhraní .NET se ❌ už nepodporují:
- .NET 7
- .NET 6
- .NET 5
- .NET Core 3.1
- .NET Core 3.0
- .NET Core 2.2
- .NET Core 2.1
- .NET Core 2.0
Instalace verzí Preview
Verze Preview a verze Candidate pro .NET nejsou dostupné v úložištích balíčků. Kandidáty na verze Preview a verze .NET můžete nainstalovat jedním z následujících způsobů:
Odebrání verzí Preview
Pokud ke správě instalace rozhraní .NET používáte správce balíčků, může dojít ke konfliktu, pokud jste dříve nainstalovali verzi Preview. Správce balíčků může interpretovat verzi, která není ve verzi Preview, jako starší verzi .NET. Pokud chcete nainstalovat verzi, která není ve verzi Preview, odinstalujte nejprve verze Preview. Další informace o odinstalaci rozhraní .NET naleznete v tématu Odebrání modulu runtime .NET a sady SDK.
Debian 12
Instalace pomocí APT se dá provést několika příkazy. Před instalací rozhraní .NET spusťte následující příkazy, které přidá podpisový klíč balíčku Microsoftu do seznamu důvěryhodných klíčů a přidá úložiště balíčků.
Otevřete terminál a spusťte následující příkazy:
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
Nainstalujte sadu SDK .
Sada .NET SDK umožňuje vyvíjet aplikace pomocí .NET. Pokud nainstalujete sadu .NET SDK, nemusíte instalovat odpovídající modul runtime. Pokud chcete nainstalovat sadu .NET SDK, spusťte následující příkazy:
sudo apt-get update && \
sudo apt-get install -y dotnet-sdk-9.0
Informace o tom, jak používat .NET CLI, najdete v přehledu .NET CLI.
Instalace modulu runtime
Modul ASP.NET Core Runtime umožňuje spouštět aplikace vytvořené pomocí .NET, které neposkytovaly modul runtime. Následující příkazy nainstalují modul runtime ASP.NET Core, což je nejkomppatibilnější modul runtime pro .NET. V terminálu spusťte následující příkazy:
sudo apt-get update && \
sudo apt-get install -y aspnetcore-runtime-9.0
Jako alternativu k modulu ASP.NET Core Runtime můžete nainstalovat modul runtime .NET, který nezahrnuje podporu ASP.NET Core: nahraďte aspnetcore-runtime-9.0
v předchozím příkazu dotnet-runtime-9.0
:
sudo apt-get install -y dotnet-runtime-9.0
Informace o tom, jak používat .NET CLI, najdete v přehledu .NET CLI.
Použití APT k aktualizaci .NET
Pokud je pro .NET k dispozici nová verze oprav, můžete ji jednoduše upgradovat pomocí apt pomocí následujících příkazů:
sudo apt-get update
sudo apt-get upgrade
Pokud jste od instalace .NET upgradovali distribuci Linuxu, možná budete muset překonfigurovat úložiště balíčků Microsoftu. Spuštěním pokynů k instalaci aktuální distribuční verze upgradujte na příslušné úložiště balíčků pro aktualizace .NET.
Řešení problému
Tato část obsahuje informace o běžných chybách, ke které může dojít při instalaci .NET pomocí APT.
Nepodařilo se najít balíček
Důležité
Použití správce balíčků k instalaci .NET z kanálu balíčků Microsoft podporuje pouze architekturu x64 . Kanál balíčků Microsoftu nepodporuje jiné architektury, jako je Arm.
Další informace o instalaci .NET bez správce balíčků najdete v jednom z následujících článků:
Nelze najít \ Některé balíčky nelze nainstalovat.
Pokud se zobrazí chybová zpráva podobná tomu, že nelze najít balíček {dotnet-package} nebo některé balíčky nelze nainstalovat, spusťte následující příkazy.
Následující sada příkazů obsahuje dva zástupné symboly.
{dotnet-package}
Představuje balíček .NET, který instalujete, napříkladaspnetcore-runtime-8.0
. Používá se v následujícímsudo apt-get install
příkazu.
Nejprve zkuste seznam balíčků vyprázdnit:
sudo dpkg --purge packages-microsoft-prod && sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update
Pak zkuste .NET nainstalovat znovu. Pokud to nepomůže, můžete ruční instalaci spustit pomocí následujících příkazů:
Pokud používáte Debian 12 nebo novější, zkuste následující příkazy:
# Get OS version info which adds the $ID and $VERSION_ID variables
source /etc/os-release
# Download the Microsoft keys
sudo apt-get install -y gpg wget
wget https://packages.microsoft.com/keys/microsoft.asc
cat microsoft.asc | gpg --dearmor -o microsoft.asc.gpg
# Add the Microsoft repository to the system's sources list
wget https://packages.microsoft.com/config/$ID/$VERSION_ID/prod.list
sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list
# Move the key to the appropriate place
sudo mv microsoft.asc.gpg $(cat /etc/apt/sources.list.d/microsoft-prod.list | grep -oP "(?<=signed-by=).*(?=\])")
# Update packages and install .NET
sudo apt-get update && \
sudo apt-get install -y {dotnet-package}
Pokud používáte verzi Debianu starší než 12, vyzkoušejte následující příkazy:
# Define the OS version, name, and codename
source /etc/os-release
# Download the Microsoft keys
sudo apt-get install -y gpg wget
wget https://packages.microsoft.com/keys/microsoft.asc
cat microsoft.asc | gpg --dearmor -o microsoft.asc.gpg
sudo mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/
# Add the Microsoft repository to the system's sources list
wget https://packages.microsoft.com/config/$ID/$VERSION_ID/prod.list
sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list
# Set ownership
sudo chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg
sudo chown root:root /etc/apt/sources.list.d/microsoft-prod.list
# Update packages and install .NET
sudo apt-get update && \
sudo apt-get install -y {dotnet-package}
Načtení se nezdařilo.
Při instalaci balíčku .NET se může zobrazit chyba podobná Failed to fetch ... File has unexpected size ... Mirror sync in progress?
. Tato chyba může znamenat, že se informační kanál balíčku pro .NET upgraduje s novějšími verzemi balíčků a že byste to měli zkusit později. Během upgradu by informační kanál balíčku neměl být po dobu delší než 30 minut nedostupný. Pokud se tato chyba nepřetržitě zobrazuje déle než 30 minut, zapište problém na adrese https://github.com/dotnet/core/issues.
Závislosti
Při instalaci pomocí správce balíčků se tyto knihovny nainstalují za vás. Pokud ale ručně nainstalujete .NET nebo publikujete samostatnou aplikaci, budete se muset ujistit, že jsou tyto knihovny nainstalované:
12.x
- libc6
- libgcc-s1
- libgssapi-krb5-2
- libicu72
- libssl3
- libstdc++6
- zlib1g
11.x
- libc6
- libgcc-s1
- libgssapi-krb5-2
- libicu67
- libssl1.1
- libstdc++6
- zlib1g
10.x
- libc6
- libgcc1
- libgssapi-krb5-2
- libicu63
- libssl1.1
- libstdc++6
- zlib1g
Další poznámky
Pomocí příkazu je možné nainstalovat apt install
závislosti. Následující fragment kódu ukazuje instalaci libc6
knihovny:
sudo apt install libc6
Pokud aplikace .NET používá sestavení System.Drawing.Common , musí být nainstalována knihovna libgdiplus . Další informace naleznete v tématu System.Drawing.Common podporován pouze ve Windows.
Nejnovější verzi knihovny libgdiplus můžete nainstalovat tak , že do systému přidáte úložiště Mono.