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 eine Liste der derzeit unterstützten .NET-Versionen auf SLES 15. 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 |
15,5 | 9.0, 8.0 |
Die folgenden Versionen von .NET ❌ werden nicht mehr unterstützt:
- .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
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-9.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-9.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-9.0
durch dotnet-runtime-9.0
:
sudo zypper install dotnet-runtime-9.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.:9.0
8.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 Sie die ASP.NET Core 9.0-Laufzeit:
aspnetcore-runtime-9.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 installiert werden. Weitere Informationen finden Sie unter "System.Drawing.Common", das nur unter Windows unterstützt wird.