Teilen über


Installieren des .NET SDK oder der .NET-Runtime für SLES

.NET wird unter SUSE Enterprise Linux (SLES) unterstützt. In diesem Artikel wird beschrieben, wie Sie .NET für SLES installieren.

Installieren Sie das SDK (das die Runtime enthält), wenn Sie .NET Core-Apps entwickeln möchten. Wenn Sie Apps nur ausführen möchten, installieren Sie die Runtime. Wenn Sie die Runtime installieren, wird die Installation der ASP.NET Core-Runtime empfohlen, da diese sowohl .NET- als auch ASP.NET Core-Runtimes umfasst.

Überprüfen Sie mithilfe der Befehle dotnet --list-sdks und dotnet --list-runtimes, welche Versionen installiert sind. Weitere Informationen finden Sie unter Überprüfen, ob .NET Core bereits installiert ist.

Unterstützte Distributionen

Die folgende Tabelle enthält die derzeit unter SLES 12 SP2 und SLES 15 unterstützten .NET-Releases. Diese Versionen werden weiterhin unterstützt, bis entweder die Version von .NET das Ende des Supports erreicht oder die Version von SLES nicht mehr unterstützt wird.

SLES .NET
15,6 9.0, 8.0, 6.0
15,5 9.0, 8.0, 6.0
12 SP5 8.0, 6.0

Wichtig

.NET 9 befindet sich derzeit in der Vorschau.

Die folgenden Versionen von .NET ❌ werden nicht mehr unterstützt:

  • .NET 7
  • .NET 6 (ab dem 12. November 2024)
  • .NET 5
  • .NET Core 3.1
  • .NET Core 3.0
  • .NET Core 2.2
  • .NET Core 2.1
  • .NET Core 2.0

Installieren von Vorschauversionen

Vorschau- und Release Candidate-Versionen von .NET sind in Paketrepositorys nicht verfügbar. Sie können Vorschauversionen und Release Candidates von .NET auf eine der folgenden Arten installieren:

Entfernen von Vorschauversionen

Wenn Sie Ihre .NET-Installation mit einem Paket-Manager verwalten, tritt möglicherweise ein Konflikt auf, wenn Sie zuvor eine Vorschauversion installiert haben. Der Paket-Manager kann die Nichtvorschauversion als frühere Version von .NET interpretieren. Für die Installation der Nichtvorschauversion müssen Sie zunächst die Vorschauversionen deinstallieren. Weitere Informationen zur Deinstallation von .NET finden Sie unter Entfernen der .NET-Runtime und des SDK.

SLES 15

Bevor Sie .NET installieren, führen Sie die folgenden Befehle aus, um den Microsoft-Paketsignaturschlüssel zu Ihrer Liste vertrauenswürdiger Schlüssel und das Microsoft-Paketrepository hinzuzufügen. Öffnen Sie ein Terminal, und führen Sie die folgenden Befehle aus:

sudo rpm -Uvh https://packages.microsoft.com/config/sles/15/packages-microsoft-prod.rpm

Das Setuppaket für das Microsoft-Repository „SLES 15“ installiert zurzeit die Datei microsoft-prod.repo im falschen Verzeichnis, sodass zypper die .NET-Pakete nicht finden kann. Erstellen Sie einen Symlink im richtigen Verzeichnis, um dieses Problem zu beheben.

sudo ln -s /etc/yum.repos.d/microsoft-prod.repo /etc/zypp/repos.d/microsoft-prod.repo

Installieren des SDKs

Das .NET SDK ermöglicht Ihnen die Entwicklung von Apps mit .NET. Wenn Sie das .NET SDK installieren, müssen Sie die entsprechende Runtime nicht installieren. Führen Sie den folgenden Befehl aus, um das .NET SDK zu installieren:

sudo zypper install dotnet-sdk-8.0

Informationen zur Verwendung der .NET CLI finden Sie in der .NET CLI-Übersicht.

Installieren der Runtime

Die ASP.NET Core-Runtime ermöglicht Ihnen die Ausführung von Apps, die mit .NET erstellt wurden und die Runtime nicht enthalten. Mit dem folgenden Befehl wird mit der ASP.NET Core-Runtime die kompatibelste Runtime für .NET installiert. Führen Sie in Ihrem Terminal den folgenden Befehl aus:

sudo zypper install aspnetcore-runtime-8.0

Als Alternative zur ASP.NET Core-Runtime können Sie die .NET-Runtime installieren, die keine ASP.NET Core-Unterstützung bietet: Ersetzen Sie dazu im vorangegangenen Befehl aspnetcore-runtime-8.0 durch dotnet-runtime-8.0:

sudo zypper install dotnet-runtime-8.0

Informationen zur Verwendung der .NET CLI finden Sie in der .NET CLI-Übersicht.

SLES 12

.NET setzt für die SLES 12-Familie mindestens SP2 voraus.

Bevor Sie .NET installieren, führen Sie die folgenden Befehle aus, um den Microsoft-Paketsignaturschlüssel zu Ihrer Liste vertrauenswürdiger Schlüssel und das Microsoft-Paketrepository hinzuzufügen. Öffnen Sie ein Terminal, und führen Sie die folgenden Befehle aus:

sudo rpm -Uvh https://packages.microsoft.com/config/sles/12/packages-microsoft-prod.rpm

Installieren des SDKs

Das .NET SDK ermöglicht Ihnen die Entwicklung von Apps mit .NET. Wenn Sie das .NET SDK installieren, müssen Sie die entsprechende Runtime nicht installieren. Führen Sie den folgenden Befehl aus, um das .NET SDK zu installieren:

sudo zypper install dotnet-sdk-8.0

Informationen zur Verwendung der .NET CLI finden Sie in der .NET CLI-Übersicht.

Installieren der Runtime

Die ASP.NET Core-Runtime ermöglicht Ihnen die Ausführung von Apps, die mit .NET erstellt wurden und die Runtime nicht enthalten. Mit dem folgenden Befehl wird mit der ASP.NET Core-Runtime die kompatibelste Runtime für .NET installiert. Führen Sie in Ihrem Terminal den folgenden Befehl aus:

sudo zypper install aspnetcore-runtime-8.0

Als Alternative zur ASP.NET Core-Runtime können Sie die .NET-Runtime installieren, die keine ASP.NET Core-Unterstützung bietet: Ersetzen Sie dazu im vorangegangenen Befehl aspnetcore-runtime-8.0 durch dotnet-runtime-8.0:

sudo zypper install dotnet-runtime-8.0

Informationen zur Verwendung der .NET CLI finden Sie in der .NET CLI-Übersicht.

Installieren anderer Versionen

Alle Versionen von .NET stehen unter https://dotnet.microsoft.com/download/dotnet zum Download zur Verfügung, erfordern jedoch manuelle Installation. Sie können versuchen, den Paket-Manager zu verwenden, um eine andere Version von .NET zu installieren. Die angeforderte Version ist jedoch möglicherweise nicht verfügbar.

Die Pakete, die Paket-Manager-Feeds hinzugefügt werden, werden in einem Format benannt, das gehackt werden kann: {product}-{type}-{version}.

  • product
    Der Typ des zu installierenden .NET-Produkts. Folgende Optionen sind gültig:

    • dotnet
    • aspnetcore
  • type
    Wählt das SDK oder die Runtime aus. Folgende Optionen sind gültig:

    • sdk(nur für das dotnet-Produkt verfügbar)
    • runtime
  • Version
    Die Version des zu installierenden SDK oder der zu installierenden Runtime. Gültige Optionen sind alle veröffentlichte Versionen, wie z. B.:

    • 8.0
    • 6.0
    • 3.1
    • 2.1

    Es ist möglich, dass das SDK bzw. die Runtime, das/die Sie herunterladen möchten, für Ihre Linux-Distribution nicht verfügbar ist. Eine Liste der unterstützten Distributionen finden Sie unter Installieren von .NET unter Linux.

Beispiele

  • Installieren der ASP.NET Core 8.0-Runtime: aspnetcore-runtime-8.0
  • Installieren der .NET Core 2.1-Runtime: dotnet-runtime-2.1
  • Installieren des .NET 5 SDK: dotnet-sdk-5.0
  • Installieren des .NET Core 3.1 SDK: dotnet-sdk-3.1

Hinweis

Einige Pakete sind möglicherweise nicht in Ihrer Linux-Distribution verfügbar.

Fehlendes Paket

Wenn die Kombination aus Paket und Version nicht funktioniert, ist sie nicht verfügbar. Es gibt z. B. kein ASP.NET Core SDK. Die SDK-Komponenten für ASP.NET Core sind im .NET SDK enthalten. Der Wert aspnetcore-sdk-8.0 ist falsch und sollte dotnet-sdk-8.0 lauten. Eine Liste der von .NET unterstützten Linux-Distributionen finden Sie unter .NET-Abhängigkeiten und -Anforderungen.

Problembehandlung des Paket-Managers

Dieser Abschnitt enthält Informationen zu häufigen Fehlern, die bei der Verwendung des Paket-Managers zur Installation von .NET auftreten können.

Fehler beim Abrufen

Beim Installieren des .NET-Pakets wird möglicherweise ein Fehler wie signature verification failed for file 'repomd.xml' from repository 'packages-microsoft-com-prod' angezeigt. Dieser Fehler bedeutet, dass ein Upgrade des Paketfeeds für .NET mit neueren Paketversionen durchgeführt wird, und dass Sie den Vorgang zu einem späteren Zeitpunkt wiederholen sollten. Während eines Upgrades sollte der Paketfeed maximal 2 Stunden lang nicht verfügbar sein. Wenn dieser Fehler länger als 2 Stunden auftritt, melden Sie ein Issue auf https://github.com/dotnet/core/issues.

Abhängigkeiten

Wenn die Installation mit einem Paket-Manager erfolgt, werden diese Bibliotheken für Sie installiert. Wenn Sie jedoch .NET manuell installieren oder eine eigenständige Anwendung veröffentlichen, müssen Sie sicherstellen, dass diese Bibliotheken installiert sind:

  • krb5
  • libicu
  • libopenssl1_1

Wenn die OpenSSL-Version der Zielruntime-Umgebung 1.1 oder neuer ist, müssen Sie compat-openssl10 installieren.

Abhängigkeiten können mit dem Befehl zypper install installiert werden Der folgende Codeschnipsel veranschaulicht die Installation der krb5-Bibliothek:

sudo zypper install krb5

Weitere Informationen zu den Abhängigkeiten finden Sie unter Eigenständige Linux-Apps.

Wenn die .NET-App die System.Drawing.Common-Assembly verwendet, muss libgdiplus ebenfalls installiert werden. Da System.Drawing.Common unter Linux nicht mehr unterstützt wird, funktioniert dies nur unter .NET 6 und erfordert das Festlegen der System.Drawing.EnableUnixSupport-Laufzeitkonfigurationsoption.

Nächste Schritte