Dela via


Installera .NET SDK eller .NET Runtime på CentOS Linux

.NET stöds på CentOS Linux. I den här artikeln beskrivs hur du installerar .NET på CentOS Linux. Om du behöver installera .NET On CentOS Stream läser du Installera .NET SDK eller .NET Runtime på RHEL och CentOS Stream.

Installera SDK :et (som innehåller körningen) om du vill utveckla .NET-appar. Eller om du bara behöver köra appar installerar du Runtime. Om du installerar Runtime rekommenderar vi att du installerar ASP.NET Core Runtime eftersom den innehåller både .NET- och ASP.NET Core-körningar.

Använd kommandona dotnet --list-sdks och dotnet --list-runtimes för att se vilka versioner som är installerade. Mer information finns i Så här kontrollerar du att .NET redan är installerat.

Viktigt!

Om du använder en pakethanterare för att installera .NET från Microsoft-paketflödet stöds endast x64-arkitekturen. Andra arkitekturer, till exempel Arm, stöds inte av Microsoft-paketflödet.

Mer information om hur du installerar .NET utan en pakethanterare finns i någon av följande artiklar:

Distributioner som stöds

Följande tabell är en lista över .NET-versioner som stöds för närvarande på CentOS Linux 7. Dessa versioner stöds fortfarande tills antingen versionen av .NET når supportens slut eller om versionen av CentOS Linux inte längre stöds.

CentOS Linux .NET
7 6,0

Varning

CentOS Linux 8 nådde ett tidigt slut på livet (EOL) den 31 december 2021. Mer information finns på den officiella CentOS Linux EOL-sidan. Därför stöds inte .NET på CentOS Linux 8.

Följande versioner av .NET stöds ❌ inte längre:

  • .NET 7
  • .NET 5
  • .NET Core 3.1
  • .NET Core 3.0
  • .NET Core 2.2
  • .NET Core 2.1
  • .NET Core 2.0

Viktigt!

Om du använder en pakethanterare för att installera .NET från Microsoft-paketflödet stöds endast x64-arkitekturen. Andra arkitekturer, till exempel Arm, stöds inte av Microsoft-paketflödet.

Mer information om hur du installerar .NET utan en pakethanterare finns i någon av följande artiklar:

Installera förhandsversioner

Förhandsversioner och versioner av .NET är inte tillgängliga i paketlagringsplatser. Du kan installera förhandsversioner och versionskandidater för .NET på något av följande sätt:

Ta bort förhandsversioner

När du använder en pakethanterare för att hantera installationen av .NET kan det uppstå en konflikt om du tidigare har installerat en förhandsversion. Pakethanteraren kan tolka den icke-förhandsversion som en tidigare version av .NET. Om du vill installera versionen som inte är förhandsversion avinstallerar du först förhandsversionerna. Mer information om hur du avinstallerar .NET finns i Ta bort .NET Runtime och SDK.

CentOS Linux 7

Innan du installerar .NET kör du följande kommandon för att lägga till Microsoft-paketsigneringsnyckeln i listan över betrodda nycklar och lägga till Microsoft-paketlagringsplatsen. Öppna en terminal och kör följande kommandon:

sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm

Installera SDK:n

Med .NET SDK kan du utveckla appar med .NET. Om du installerar .NET SDK behöver du inte installera motsvarande körning. Kör följande kommando för att installera .NET SDK:

sudo yum install dotnet-sdk-6.0

Installera körningen

Med ASP.NET Core Runtime kan du köra appar som har skapats med .NET som inte angav körningen. Följande kommando installerar ASP.NET Core Runtime, som är den mest kompatibla körningen för .NET. Kör följande kommando i terminalen:

sudo yum install aspnetcore-runtime-6.0

Som ett alternativ till ASP.NET Core Runtime kan du installera .NET Runtime, som inte innehåller ASP.NET Core-stöd: ersätt aspnetcore-runtime-6.0 i föregående kommando med dotnet-runtime-6.0:

sudo yum install dotnet-runtime-6.0

Installera andra versioner

Alla versioner av .NET är tillgängliga för nedladdning på https://dotnet.microsoft.com/download/dotnet, men kräver manuell installation. Du kan försöka använda pakethanteraren för att installera en annan version av .NET. Den begärda versionen kanske dock inte är tillgänglig.

Paketen som läggs till i pakethanterarens feeds namnges i ett hackbart format, till exempel: {product}-{type}-{version}.

  • Produkt
    Typen av .NET-produkt som ska installeras. Giltiga alternativ är:

    • dotnet
    • aspnetcore
  • typ
    Väljer SDK eller körning. Giltiga alternativ är:

    • sdk(endast tillgängligt för dotnet-produkten)
    • runtime
  • Version
    Den version av SDK eller körning som ska installeras. Giltiga alternativ är alla versioner som släpps, till exempel:

    • 8.0
    • 6.0
    • 3.1
    • 2.1

    Det är möjligt att SDK/runtime som du försöker ladda ned inte är tillgänglig för Din Linux-distribution. En lista över distributioner som stöds finns i Installera .NET på Linux.

Exempel

  • Installera ASP.NET Core 8.0-körningen: aspnetcore-runtime-8.0
  • Installera .NET Core 2.1-körningen: dotnet-runtime-2.1
  • Installera .NET 5 SDK: dotnet-sdk-5.0
  • Installera .NET Core 3.1 SDK: dotnet-sdk-3.1

Kommentar

Vissa paket kanske inte är tillgängliga i Linux-distributionen.

Paketet saknas

Om paketversionskombinationen inte fungerar är den inte tillgänglig. Det finns till exempel ingen ASP.NET Core SDK. SDK-komponenterna för ASP.NET Core ingår i .NET SDK. Värdet aspnetcore-sdk-8.0 är felaktigt och ska vara dotnet-sdk-8.0. En lista över Linux-distributioner som stöds av .NET finns i .NET-beroenden och krav.

Felsöka pakethanteraren

Det här avsnittet innehåller information om vanliga fel som du kan få när du använder pakethanteraren för att installera .NET.

Det går inte att hitta paketet

Viktigt!

Om du använder en pakethanterare för att installera .NET från Microsoft-paketflödet stöds endast x64-arkitekturen. Andra arkitekturer, till exempel Arm, stöds inte av Microsoft-paketflödet.

Mer information om hur du installerar .NET utan en pakethanterare finns i någon av följande artiklar:

Det gick inte att hämta

När du installerar .NET-paketet kan ett fel som liknar signature verification failed for file 'repomd.xml' from repository 'packages-microsoft-com-prod'. I allmänhet innebär det här felet att paketflödet för .NET uppgraderas med nyare paketversioner och att du bör försöka igen senare. Under en uppgradering bör paketflödet inte vara otillgängligt på mer än 2 timmar. Om du kontinuerligt får det här felet i mer än 2 timmar kan du ange ett problem på https://github.com/dotnet/core/issues.

Mer information om hur du löser dessa problem finns i Felsöka fxr, libhostfxr.sooch FrameworkList.xml fel.

Beroenden

När du installerar med en pakethanterare installeras dessa bibliotek åt dig. Men om du installerar .NET manuellt eller publicerar en fristående app måste du kontrollera att dessa bibliotek är installerade:

  • krb5-libs
  • Libicu
  • openssl-libs
  • Zlib

Om målkörningsmiljöns OpenSSL-version är 1.1 eller senare måste du installera compat-openssl10.

Beroenden kan installeras med yum install kommandot . Följande kodfragment visar hur libicu du installerar biblioteket:

sudo yum install libicu

Mer information om beroendena finns i Fristående Linux-appar.

Om .NET-appen använder sammansättningen System.Drawing.Common måste även libgdiplus installeras. Eftersom System.Drawing.Common inte längre stöds i Linux fungerar detta bara på .NET 6 och kräver att du ställer in körningskonfigurationsväxeln System.Drawing.EnableUnixSupport .

Du kan installera en ny version av libgdiplus genom att lägga till Mono-lagringsplatsen i systemet.

Nästa steg