Installieren des .NET SDK oder der .NET-Runtime unter Fedora
.NET wird unter Fedora unterstützt. In diesem Artikel wird beschrieben, wie Sie .NET unter Fedora installieren. Wenn für eine Fedora-Version kein Support mehr geboten wird, wird .NET mit dieser Version nicht mehr unterstützt.
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.
Weitere Informationen zur Installation von .NET ohne Paket-Manager finden Sie in einem der folgenden Artikel:
- Installieren des .NET SDK oder der .NET-Runtime mithilfe eines Skripts
- Manuelles Installieren des .NET SDK oder der .NET-Runtime
Unterstützte Distributionen
Die folgende Tabelle enthält die derzeit unterstützten .NET-Releases und Versionen von Fedora, unter denen sie unterstützt werden. Diese Versionen werden weiterhin unterstützt, bis entweder die Version von .NET das Ende des Supports oder die Version von Fedora das Ende ihrer Lebensdauer erreicht.
Fedora | .NET |
---|---|
40 | 8.0, 6.0 |
39 | 8.0, 6.0 |
Die folgenden Versionen von .NET ❌ werden nicht mehr unterstützt:
- .NET 7
- .NET 5
- .NET Core 3.1
- .NET Core 3.0
- .NET Core 2.2
- .NET Core 2.1
- .NET Core 2.0
Installieren von .NET 8
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
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 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
Informationen zur Verwendung der .NET CLI finden Sie in der .NET CLI-Übersicht.
Installieren von .NET 6
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-6.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 dnf install aspnetcore-runtime-6.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-6.0
durch dotnet-runtime-6.0
:
sudo dnf install dotnet-runtime-6.0
Informationen zur Verwendung der .NET CLI finden Sie in der .NET CLI-Übersicht.
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.
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 unter älteren Distributionen
Bei älteren Versionen von Fedora ist .NET nicht in den Standardpaketrepositorys enthalten. Sie können .NET mit dem Skript dotnet-install.sh installieren, oder Sie verwenden das Repository von Microsoft zur Installation von .NET:
Fügen Sie zunächst den Microsoft-Signaturschlüssel zur Liste der vertrauenswürdigen Schlüssel hinzu.
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
Fügen Sie als Nächstes das Microsoft-Paketrepository hinzu. Die Quelle des Repositorys basiert auf Ihrer Fedora-Version.
Fedora-Version Paketrepository 36 https://packages.microsoft.com/config/fedora/36/prod.repo
35 https://packages.microsoft.com/config/fedora/35/prod.repo
34 https://packages.microsoft.com/config/fedora/34/prod.repo
33 https://packages.microsoft.com/config/fedora/33/prod.repo
32 https://packages.microsoft.com/config/fedora/32/prod.repo
31 https://packages.microsoft.com/config/fedora/31/prod.repo
30 https://packages.microsoft.com/config/fedora/30/prod.repo
29 https://packages.microsoft.com/config/fedora/29/prod.repo
28 https://packages.microsoft.com/config/fedora/28/prod.repo
27 https://packages.microsoft.com/config/fedora/27/prod.repo
sudo wget -O /etc/yum.repos.d/microsoft-prod.repo https://packages.microsoft.com/config/fedora/31/prod.repo
Verwenden Sie den Befehl
sudo dnf install
, um ein .NET-Paket zu installieren.
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 oder .NET Core auftreten können.
Paket konnte nicht gefunden werden
Weitere Informationen zur Installation von .NET ohne Paket-Manager finden Sie in einem der folgenden Artikel:
- Installieren des .NET SDK oder der .NET-Runtime mithilfe eines Skripts
- Manuelles Installieren des .NET SDK oder der .NET-Runtime
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.
Fehler im Zusammenhang mit fehlender fxr
-, libhostfxr.so
-, FrameworkList.xml
- oder /usr/share/dotnet
-Instanz
Weitere Informationen zum Beheben dieser Probleme finden Sie unter Problembehandlung bei fxr
-, libhostfxr.so
- und FrameworkList.xml
-Fehlern.