Installieren von .NET SDK oder .NET-Runtime unter RHEL und CentOS Stream

Wichtig

.NET 8 wurde am 14. November 2023 veröffentlicht. Es kann Zeit dauern, bis die Pakete in den Paket-Manager-Feeds angezeigt werden.

.NET wird von Red Hat Enterprise Linux (RHEL) unterstützt. In diesem Artikel wird beschrieben, wie Sie .NET unter RHEL und CentOS Stream 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.

Registrieren Ihres Red Hat-Abonnements

Sie müssen sich zuerst mit dem Red Hat-Abonnement-Manager registrieren, um .NET von Red Hat unter RHEL installieren zu können. Wenn Sie dies auf Ihrem System noch nicht getan haben oder Sie unsicher sind, finden Sie weitere Informationen in der Red Hat-Produktdokumentation für .NET.

Wichtig

Dies gilt nicht für CentOS Stream.

Unterstützte Distributionen

Die folgende Tabelle enthält die derzeit unter RHEL und CentOS Stream unterstützten .NET-Versionen. Diese Versionen werden weiterhin unterstützt, bis entweder die Version von .NET das Ende des Supports erreicht oder die Linux-Distribution keinen Support mehr erhält.

Distribution .NET
RHEL 9 (9.1) 8, 7, 6
RHEL 8 (8.7) 8, 7, 6
RHEL 7 6
CentOS Stream 9 8, 7, 6
CentOS Stream 8 8, 7, 6

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

  • .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.

RHEL 9

.NET ist in den AppStream-Repositorys für RHEL 9 enthalten.

Wichtig

.NET 8 wurde am 14. November 2023 veröffentlicht. Es kann Zeit dauern, bis die Pakete in den Paket-Manager-Feeds angezeigt werden.

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 dnf install dotnet-sdk-8.0

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 dnf 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 dnf install dotnet-runtime-8.0

RHEL 8

.NET ist in den AppStream-Repositorys für RHEL 8 enthalten.

Wichtig

.NET 8 wurde am 14. November 2023 veröffentlicht. Es kann Zeit dauern, bis die Pakete in den Paket-Manager-Feeds angezeigt werden.

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 dnf install dotnet-sdk-8.0

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 dnf 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 dnf install dotnet-runtime-8.0

RHEL 7 ❌ .NET 8

.NET 8 ist nicht mit RHEL 7 kompatibel und funktioniert daher nicht.

RHEL 7 ❌ .NET 7

.NET 7 wird unter RHEL 7 nicht offiziell unterstützt. Weitere Informationen zum Installieren von .NET 7 finden Sie unter Installieren von .NET unter Linux mithilfe eines Installationsskripts oder durch Extrahieren von Binärdateien.

RHEL 7 ✔️ .NET 6

Mit dem folgenden Befehl wird das Paket scl-utils installiert:

sudo yum install scl-utils

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 die folgenden Befehle aus, um das .NET SDK zu installieren:

subscription-manager repos --enable=rhel-7-server-dotnet-rpms
yum install rh-dotnet60 -y
scl enable rh-dotnet60 bash

Red Hat empfiehlt nicht die dauerhafte Aktivierung von rh-dotnet60, da dies andere Programme beeinträchtigen könnte. Wenn Sie rh-dotnet dauerhaft aktivieren möchten, fügen Sie der Datei ~/.bashrc die folgende Zeile hinzu.

source scl_source enable rh-dotnet60

Installieren der Runtime

Die .NET-Runtime ermöglicht Ihnen die Ausführung von Apps, die mit .NET erstellt wurden und die Runtime nicht enthalten. Die folgenden Befehle installieren die ASP.NET Core-Runtime, die die kompatibelste Runtime für .NET Core ist. Führen Sie in Ihrem Terminal die folgenden Befehle aus.

subscription-manager repos --enable=rhel-7-server-dotnet-rpms
yum install rh-dotnet60-aspnetcore-runtime-6.0 -y
scl enable rh-dotnet60 bash

Red Hat empfiehlt nicht die dauerhafte Aktivierung von rh-dotnet60, da dies andere Programme beeinträchtigen könnte. Wenn Sie rh-dotnet60 dauerhaft aktivieren möchten, fügen Sie der Datei ~/.bashrc die folgende Zeile hinzu.

source scl_source enable rh-dotnet60

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 vorherigen Befehl rh-dotnet60-aspnetcore-runtime-6.0 durch rh-dotnet60-dotnet-runtime-6.0.

CentOS Stream 9 ✔️

.NET ist in den AppStream-Repositorys für CentOS Stream 9 enthalten.

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 dnf install dotnet-sdk-8.0

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 dnf 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 dnf install dotnet-runtime-8.0

CentOS Stream 8 ✔️

Verwenden Sie das Microsoft-Repository, um .NET zu installieren:

sudo rpm -Uvh https://packages.microsoft.com/config/centos/8/packages-microsoft-prod.rpm
sudo yum install dotnet-sdk-8.0

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-libs
  • libicu
  • openssl-libs
  • zlib

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 yum install installiert werden Der folgende Codeschnipsel veranschaulicht die Installation der libicu-Bibliothek:

sudo yum install libicu

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.

Sie können eine neuere Version von libgdiplus installieren, indem Sie Ihrem System das Mono-Repository hinzufügen.

Installieren anderer Versionen

Konsultieren Sie die Red Hat-Dokumentation zu .NET hinsichtlich der Schritte, die zur Installation anderer Releases von .NET erforderlich sind.

Problembehandlung des Paket-Managers

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

Weitere Informationen zum Beheben dieser Probleme finden Sie unter Problembehandlung bei fxr-, libhostfxr.so- und FrameworkList.xml-Fehlern.

Nächste Schritte