Freigeben über


Installieren von .NET-Runtime mit Snap

In diesem Artikel wird beschrieben, wie Sie das Snap-Paket für .NET-Runtime installieren. Snap-Pakete für .NET-Runtime werden von Canonical bereitgestellt und verwaltet. Snaps stellen eine gute Alternative zum in Ihre Linux-Distribution integrierten Paket-Manager dar.

Ein Snap ist ein Bündel aus einer App und ihren Abhängigkeiten, das in vielen verschiedenen Linux-Distributionen funktioniert. Snaps sind über den Snap Store abrufbar und installierbar. Weitere Informationen zu Snap finden Sie unter Schnellstart-Tour.

Achtung

Bei Snap-Installationen von .NET können Probleme beim Ausführen von .NET-Tools auftreten. Wenn Sie .NET-Tools verwenden möchten, sollten Sie .NET mit dem dotnet-install-Skript oder dem Paket-Manager für die jeweilige Linux-Distribution installieren.

Voraussetzungen

  • Linux-Distribution, die Snap unterstützt.
  • snapd der Snap-Daemon.

Ihre Linux-Distribution enthält möglicherweise bereits Snap. Versuchen Sie, snap von einem Terminal aus auszuführen, um festzustellen, ob der Befehl funktioniert. Eine Liste der unterstützten Linux-Distributionen und Anweisungen zum Installieren von Snap finden Sie unter Installierensnapd.

.NET-Releases

Microsoft veröffentlicht .NET unter zwei verschiedenen Supportrichtlinien, Long Term Support (LTS) und Standard Term Support (STS). Die Qualität aller Releases ist gleich. Der einzige Unterschied ist die Dauer des Supports. LTS-Versionen erhalten drei Jahre lang kostenlosen Support und Patches. STS-Releases erhalten für 18 Monate kostenlosen Support und Patches. Weitere Informationen finden Sie in der .NET-Supportrichtlinie.

Die Versionen von .NET, die derzeit von Microsoft unterstützt werden, sind:

  • 8.0 (LTS) – Der Support endet am 10. November 2026.
  • 6.0 (LTS) – Der Support endet am 12. November 2024.

Andere Entitäten, die .NET erstellen und freigeben, können unterschiedliche Supportrichtlinien einführen. Stellen Sie sicher, dass Sie sich mit ihnen vertraut machen, um zu verstehen, wie .NET unterstützt wird.

1. Installieren der Runtime

Die folgenden Schritte installieren das Snap-Paket für .NET 8-Runtime:

  1. Öffnen Sie ein Terminal.

  2. Verwenden Sie snap install, um das Snap-Paket für .NET-Runtime zu installieren. Der folgende Befehl installiert z. B. die .NET 8-Runtime.

    sudo snap install dotnet-runtime-80
    

Jede .NET-Runtime wird als einzelnes Snap-Paket veröffentlicht. In der folgenden Tabelle sind die Pakete aufgeführt:

.NET-Version Snap-Paket Von Microsoft unterstützte .NET-Version
8 (STS) dotnet-runtime-80 Ja
7 (STS) dotnet-runtime-70 No
6 (LTS) dotnet-runtime-60 Ja
5 dotnet-runtime-50 No
3.1 dotnet-runtime-31 No
3.0 dotnet-runtime-30 No
2.2 dotnet-runtime-22 No
2.1 dotnet-runtime-21 No

2. Aktivieren des Dotnet-Befehls

Wenn das Snap-Paket für .NET-Runtime installiert ist, wird der dotnet-Befehl nicht automatisch konfiguriert. Verwenden Sie den snap alias-Befehl, um den dotnet-Befehl über das Terminal zu verwenden. Der Befehl ist wie folgt formatiert: sudo snap alias {package}.{command} {alias}. Im folgenden Beispiel wird der dotnet-Befehl zugeordnet:

sudo snap alias dotnet-runtime-80.dotnet dotnet

3. Exportieren des Installationspfads

Die DOTNET_ROOT-Umgebungsvariable wird häufig von Tools verwendet, um zu ermitteln, wo .NET installiert ist. Wenn .NET über Snap installiert wird, ist diese Umgebungsvariable nicht konfiguriert. Sie sollten die Umgebungsvariable DOTNET_ROOT in Ihrem Profil konfigurieren. Der Pfad zu Snap verwendet das folgende Format: /snap/{package}/current. Wenn Sie z. B. das dotnet-runtime-80-Snap installiert haben, verwenden Sie den folgenden Befehl, um die Umgebungsvariable auf den Speicherort von .NET festzulegen:

export DOTNET_ROOT=/snap/dotnet-runtime-80/current

Dauerhaftes Exportieren der Umgebungsvariable

Der oben aufgeführte Befehl export legt nur die Umgebungsvariable für die Terminalsitzung fest, in der er ausgeführt wurde.

Sie können Ihr Shell-Profil bearbeiten, um diese Befehle dauerhaft hinzuzufügen. Für Linux sind verschiedene Shells verfügbar, die jeweils über ein anderes Profil verfügen. Zum Beispiel:

  • Bash-Shell: ~/.bash_profile, ~/.bashrc
  • Korn-Shell: ~/.kshrc oder .profile
  • Z-Shell: ~/.kshrc oder .profile

Bearbeiten Sie die geeignete Quelldatei für Ihre Shell, und fügen Sie export DOTNET_ROOT=/snap/dotnet-runtime-80/current hinzu.

Problembehandlung

Der Dotnet-Terminalbefehl funktioniert nicht.

Snap-Pakete können einem Befehl einen Alias zuordnen, der vom Paket bereitgestellt wird. Die Snap-Pakete für .NET-Runtime werden nicht automatisch an den dotnet-Befehl angedockt. Verwenden Sie den folgenden Befehl, um den dotnet-Befehl mittels Alias an das Snap-Paket zu verweisen:

sudo snap alias dotnet-runtime-80.dotnet dotnet

Ersetzen Sie dotnet-runtime-80 durch den Namen Ihres Runtime-Pakets.

Snap auf WSL2 kann nicht installiert werden

systemd muss auf der WSL2-Instanz aktiviert sein, bevor Snap installiert werden kann.

  1. Öffnen Sie /etc/wsl.conf in einem Text-Editor Ihrer Wahl.

  2. Fügen Sie die folgende Konfiguration ein:

    [boot]
    systemd=true
    
  3. Speichern Sie die Datei, und starten Sie die WSL2-Instanz über PowerShell neu. Verwenden Sie den Befehl wsl.exe --shutdown.

4. Verwenden der .NET CLI

Öffnen Sie ein Terminal und geben Sie dotnet ein.

dotnet

Daraufhin wird eine Ausgabe angezeigt, die in etwa wie folgt aussieht:

Usage: dotnet [options]
Usage: dotnet [path-to-application]

Options:
  -h|--help         Display help.
  --info            Display .NET information.
  --list-sdks       Display the installed SDKs.
  --list-runtimes   Display the installed runtimes.

path-to-application:
  The path to an application .dll file to execute.

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