Freigeben über


Übersicht über .NET auf Ubuntu

In diesem Artikel wird beschrieben, wie Sie .NET unter Ubuntu installieren. Ab Ubuntu 22.04 sind die meisten unterstützten Versionen von .NET im integrierten Ubuntu-Feed verfügbar. Das Ubuntu .NET Backports-Paket-Repository enthält die verbleibenden unterstützten .NET-Versionen. Weitere Informationen zu den verfügbaren Versionen finden Sie im Abschnitt Unterstützte Distributionen.

Canonical hat die Veröffentlichung von .NET auf Ubuntu übernommen. Ab Ubuntu 22.04 verteilt Microsoft .NET für Ubuntu nicht mehr an das Microsoft-Paket-Repository.

Warnung

Es wird empfohlen, zwischen Ubuntu- oder Microsoft-Feeds auszuwählen, um .NET-Pakete einzubinden. Mischen Sie keine .NET-Pakete aus mehreren Paketrepositorys, da dies zu Problemen führt, wenn Apps versuchen, eine bestimmte Version von .NET aufzulösen.

Methode Vorteile Nachteile
Paket-Manager
(integrierter
Ubuntu-Feed)
  • In der Regel ist die neueste Version verfügbar.
  • Patches sind sofort verfügbar.
  • Abhängigkeiten sind enthalten.
  • Einfache Entfernung.
  • Verfügbare .NET-Versionen werden für den Supportzeitraum der jeweiligen Ubuntu-Version unterstützt.
  • Unterstützung für die IBM System Z-Plattform für .NET 8 auf Ubuntu 24.04.
  • Nicht verfügbar für Ubuntu 16.04, 18.04, 20.04.
  • Die verfügbaren .NET-Versionen variieren je nach Ubuntu-Version.
  • Vorschauversionen sind nicht verfügbar.
Paket-Manager
(.NET-Backports-
Ubuntu-Feed)
  • Enthält alle unterstützten Versionen, die nicht im integrierten Ubuntu-Feed enthalten sind.
  • Patches sind sofort verfügbar.
  • Abhängigkeiten sind enthalten.
  • Einfache Entfernung.
  • Kompatibel mit dem integrierten Ubuntu-Feed.
  • Nicht verfügbar für Ubuntu 16.04, 18.04, 20.04.
  • Erfordert die Registrierung des Ubuntu .NET-Backports-Paketrepositorys.
  • Vorschauversionen sind nicht verfügbar.
Paket-Manager
(Microsoft-Feed)
  • Immer verfügbare unterstützte Versionen.
  • Patches sind sofort verfügbar.
  • Abhängigkeiten sind enthalten.
  • Einfache Entfernung.
  • Nicht verfügbar für Ubuntu 24.04+.
  • Erfordert die Registrierung des Microsoft-Paketrepositorys.
  • Vorschauversionen sind nicht verfügbar.
  • Unterstützt nur x64-Ubuntu.
Skript\Manuelle Extrahierung
  • Steuern Sie, wo .NET installiert wird.
  • Vorschauversionen sind verfügbar.
  • Installieren Sie Updates manuell.
  • Installieren Sie Abhängigkeiten manuell.
  • Manuelle Entfernung.

Überlegungen beim Upgrade von Ubuntu

Upgrade von Ubuntu auf 22.04 oder höher? Erwägen Sie zuerst die Deinstallation von .NET.

Wenn Sie einen Paket-Manager zum Installieren von .NET aus dem Microsoft-Paket-Repository verwendet haben, erhalten Sie nach dem Upgrade von Ubuntu ein Paketmix-Problem. Da Canonical .NET nun in den Paketfeeds für Ubuntu 22.04 (und höhere Versionen) veröffentlicht, weiß der Paket-Manager nicht mehr über die zuvor installierte .NET-Version. Die Pakete können nicht auf das neueste .NET aktualisiert werden. Deinstallieren Sie sie zuerst, und installieren Sie sie dann aus dem [Ubuntu-Paket-Repository].

Entscheidung hinsichtlich der Installation von .NET

Wenn Ihre Ubuntu-Version .NET über den integrierten oder den .NET-Backports-Ubuntu-Feed unterstützt, wird die Unterstützung für diese .NET-Builds von Canonical bereitgestellt und die Builds können für unterschiedliche Workloads optimiert sein. Microsoft bietet Unterstützung für Pakete im Microsoft-Paketrepositoryfeed.

Verwenden Sie die folgenden Abschnitte, um festzustellen, wie Sie .NET installieren sollten:

Ich verwende Ubuntu 22.04 oder höher und ich brauche nur .NET

Installieren Sie .NET über den Ubuntu-Feed. Weitere Informationen finden Sie auf den folgenden Seiten:

Wichtig

Wenn Sie .NET 8 SDK und Ubuntu 22.04 verwenden, sollten Sie wissen, dass die von Canonical angebotenen SDK-Versionen immer in der .1xx-Featureband enthalten sind. Wenn Sie ein neueres Featurebandrelease verwenden möchten, verwenden Sie den Microsoft-Feed, um das SDK zu installieren. Lesen Sie sich unbedingt die Informationen im Artikel .NET-Paketvertauschungen auf Linux durch, um die Auswirkungen des Wechsels zwischen Repositoryfeeds zu verstehen.

Wenn Sie das Microsoft-Repository installieren, um andere Microsoft-Pakete wie powershell, mdatp oder mssql zu verwenden, müssen Sie die Priorität der vom Microsoft-Repository bereitgestellten .NET-Pakete aufheben. Anweisungen zum Aufheben der Priorisierung der Pakete finden Sie unter Meine Linux-Distribution stellt .NET-Pakete bereit, und ich möchte sie verwenden.

Ich verwende eine ältere Version als Ubuntu 22.04

Verwenden Sie die Anweisungen auf der versionsspezifischen Ubuntu-Seite.

Im Abschnitt Unterstützte Distributionen finden Sie weitere Informationen darüber, welche Versionen von .NET für Ihre Version von Ubuntu unterstützt werden. Wenn Sie eine Version installieren, die nicht unterstützt wird, finden Sie weitere Informationen unter Registrieren des Microsoft-Paketrepositorys.

Ich verwende andere Microsoft-Pakete, wie powershell, mdatp oder mssql

Wenn Ihre Ubuntu-Version .NET über einen Ubuntu-Feed unterstützt, müssen Sie entscheiden, welcher Feed .NET installieren soll. Der Abschnitt Unterstützte Distributionen enthält eine Tabelle, in der aufgelistet ist, welche Versionen von .NET in den Paketfeeds verfügbar sind.

Wenn Sie die .NET-Pakete aus einem Ubuntu-Feed beziehen möchten, müssen Sie die Priorität der .NET-Pakete aus dem Microsoft-Repository aufheben. Anweisungen zum Aufheben der Priorisierung der Pakete finden Sie unter Meine Linux-Distribution stellt .NET-Pakete bereit, und ich möchte sie verwenden.

Ich möchte eine .NET App erstellen

Verwenden Sie die gleichen Paketquellen für das SDK wie für die Runtime. Es wird empfohlen, .NET über einen Ubuntu-Feed zu installieren. Wenn Sie .NET jedoch aus einer anderen Quelle installieren möchten (z. B. das Microsoft-Paketrepository für den Zugriff auf höhere SDK-Featurebänder), sollten Sie .NET deinstallieren, ihren Paket-Manager so konfigurieren, dass .NET-Pakete aus dem Ubuntu-Feed ignoriert und von der anderen Quelle erneut installiert werden.

Überprüfen Sie die anderen Vorschläge im Abschnitt Entscheidung hinsichtlich der Installation von .NET.

Ich möchte eine .NET-App in einem Container-, Cloud- oder Continuous-Integration-Szenario ausführen

Wenn Ihre Ubuntu-Version die von Ihnen benötigte .NET-Version bereitstellt, installieren Sie sie über einen Ubuntu-Feed. Andernfalls registrieren Sie das Microsoft-Paketrepository, und installieren Sie .NET aus diesem Repository. Überprüfen Sie die Informationen im Abschnitt Unterstützte Distributionen.

Wenn die gewünschte Version von .NET nicht verfügbar ist, verwenden Sie das Skript dotnet-install.

Meine Ubuntu-Distribution enthält nicht die gewünschte .NET-Version oder ich benötige eine nicht mehr unterstützte .NET-Version

Es wird empfohlen, APT und das Microsoft-Paketrepository zu verwenden. Weitere Informationen finden Sie im Abschnitt Registrieren und Installieren mit dem Microsoft-Paketrepository.

Ich möchte eine Vorschauversion installieren

Verwenden Sie eine der folgenden Vorgehensweisen zum Installieren von .NET:

Ich möchte APT nicht verwenden

Wenn Sie eine automatische Installation wünschen, verwenden Sie das Linux-Installationsskript.

Wenn Sie die volle Kontrolle über die Installation von .NET haben möchten, laden Sie einen Tarball herunter und installieren Sie .NET manuell. Weitere Informationen finden Sie unter Manuelle Installation.

Ich verwende eine ARM-basierte CPU

Wenn Ihre Ubuntu-Version die von Ihnen benötigte .NET-Version bereitstellt, installieren Sie sie über den integrierten Feed. Überprüfen Sie die Informationen im Abschnitt Unterstützte Distributionen.

Wenn die gewünschte .NET-Version nicht verfügbar ist, versuchen Sie, eine der folgenden Methoden zum Installieren von .NET zu verwenden:

Ich verwende die IBM System Z-Plattform

Ab .NET 8 auf Ubuntu 24.04 unterstützt Canonical .NET für die IBM System Z-Plattform. Canonical bemüht sich um die Erweiterung des Supports auf andere .NET- und Ubuntu-Versionen.

Installieren Sie .NET über den integrierten Ubuntu-Feed. Weitere Informationen finden Sie auf den folgenden Seiten:

Unterstützte Distributionen

Die folgende Tabelle enthält die derzeit unterstützten .NET-Releases und die Versionen von Ubuntu, unter denen sie unterstützt werden. Jeder Link führt zu der Seite mit der jeweiligen Ubuntu-Version und enthält spezifische Anweisungen zur Installation von .NET für diese Version von Ubuntu.

Ubuntu Unterstützte .NET-Versionen Verfügbar in
Integrierter Ubuntu-Feed
Verfügbar in
.NET-Backports
Ubuntu-Feed
Verfügbar in
Microsoft-Feed
24.10 9.0, 8.0 9.0, 8.0 Keine Keine
24.04 (LTS) 9.0, 8.0 8.0 9.0, 7.0, 6.0 Keine
22.04 (LTS) 9.0, 8.0 8.0, 7.0, 6.0 9.0 8.0, 7.0, 6.0, 3.1
20.04 (LTS) 9.0, 8.0 Keine Keine 8.0, 7.0. 6.0, 5.0, 3.1, 2.1

Wenn eine Ubuntu-Version das Ende des Supportzeitraums erreicht, wird .NET nicht mehr mit dieser bestimmten Ubuntu-Version unterstützt.

Canonical unterstützt .NET-Versionen im integrierten Ubuntu-Feed für die Lebensdauer dieser Ubuntu-Version, auch außerhalb der von Microsoft bereitgestellten Supportlebensdauer und bietet Best-Effort-Support für .NET-Versionen im .NET Backports-Paketrepository, der sich nicht über die von Microsoft bereitgestellte Supportlebensdauer hinaus erstreckt.

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

Ubuntu .NET Backports-Paketrepository

Das Ubuntu .NET Backports-Paketrepository stellt Versionen von .NET bereit, die nicht im integrierten Ubuntu-Feed verfügbar sind. Der Abschnitt Unterstützte Distributionen enthält eine Tabelle, in der aufgelistet ist, welche Versionen von .NET im Paketfeed verfügbar sind. Canonical verwaltet die Pakete, die in diesem Paketrepository enthalten sind, und bietet Best-Effort-Support, der sich nicht über die von Microsoft bereitgestellte Supportlebensdauer oder den Supportzeitraum der jeweiligen Ubuntu-Version erstreckt.

Weitere Informationen finden Sie in der Webansicht des Ubuntu .NET Backports-Paketrepositorys.

Registrieren des Ubuntu .NET Backports-Paketrepositorys

Öffnen Sie ein Terminal, und führen Sie den folgenden Befehl aus:

sudo add-apt-repository ppa:dotnet/backports

Tipp

Sie müssen apt update nicht aufrufen. Der add-apt-repository-Befehl führt dies standardmäßig aus.

Hinweis

Das Ubuntu .NET Backports-Paketrepository ist mit dem integrierten Ubuntu-Feed kompatibel. Daher müssen Sie ihren Paket-Manager nicht so konfigurieren, dass .NET-Pakete im integrierten Ubuntu-Feed ignoriert werden.

Aufheben der Registrierung des Ubuntu .NET-Backports-Paketrepositorys

Wenn Sie keine Pakete mehr aus dem Ubuntu .NET Backports-Paketrepository nutzen möchten, können Sie die Registrierung aufheben. Öffnen Sie ein Terminal, und führen Sie den folgenden Befehl aus:

sudo add-apt-repository --remove ppa:dotnet/backports

Wichtig

Durch Das Aufheben der Registrierung des Ubuntu .NET-Backports-Paketrepositorys werden keine Pakete deinstalliert.

„add-apt-repository“-Befehl nicht gefunden

Das add-apt-repository(1)-Dienstprogramm ist auf den meisten Ubuntu-Installationen vorinstalliert.

Wenn Sie eine Fehlermeldung erhalten, dass der add-apt-repository-Befehl nicht gefunden wurde, müssen Sie das software-properties-common-Paket installieren, das diesen Befehl bereitstellt. Öffnen Sie ein Terminal, und führen Sie die folgenden Befehle aus:

sudo apt update
sudo apt install software-properties-common

Registrieren des Microsoft-Paketrepositorys

Wichtig

Dies gilt nur für Ubuntu-Versionen vor 24.04. Ab Ubuntu 24.04 veröffentlicht Microsoft keine Pakete mehr im Microsoft-Paket-Repository. Verwenden Sie die Tabelle für unterstützte Verteilungen, um die beste Methode zum Installieren von .NET zu ermitteln.

Das Microsoft-Paketrepository enthält alle Versionen von .NET, die früher oder aktuell von Ihrer Ubuntu-Version unterstützt wurden bzw. werden. Wenn Ihre Ubuntu-Version .NET-Pakete bereitstellt, müssen Sie die Priorisierung der Ubuntu-Pakete aufheben und das Microsoft-Repository verwenden. Eine Anleitung, wie Sie die Priorisierung der Pakete aufheben können, finden Sie unter Ich benötige eine .NET-Version, die nicht von meiner Linux-Distribution bereitgestellt wird.

Wichtig

Das Microsoft-Paket-Repository unterstützt nur .NET-Pakete, die auf die x64-Architektur abzielen. Andere Architekturen wie ARM müssen .NET auf andere Weise installieren, z. B. mit dem Installationsskript oder durch manuelle Installation.

Vorschauversionen sind nicht im Microsoft-Paketrepository verfügbar. Weitere Informationen finden Sie unter Installieren von Vorschauversionen.

Achtung

Es wird empfohlen, nur ein Repository zum Verwalten aller .NET-Installationen zu verwenden. Wenn Sie zuvor .NET über das Ubuntu-Repository installiert haben, müssen Sie das System von .NET-Paketen bereinigen und APT so konfigurieren, dass es die Ubuntu-Feeds ignoriert. Weitere Informationen dazu finden Sie unter Ich benötige eine .NET-Version, die nicht von meiner Linux-Distribution bereitgestellt wird.

Die Installation mit APT kann mit einigen wenigen Befehlen erfolgen. 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 Paketrepository hinzuzufügen.

Öffnen Sie ein Terminal, und führen Sie die folgenden Befehle aus:

# Get OS version info which adds the $ID and $VERSION_ID variables
source /etc/os-release

# Download Microsoft signing key and repository
wget https://packages.microsoft.com/config/$ID/$VERSION_ID/packages-microsoft-prod.deb -O packages-microsoft-prod.deb

# Install Microsoft signing key and repository
sudo dpkg -i packages-microsoft-prod.deb

# Clean up
rm packages-microsoft-prod.deb

# Update packages
sudo apt update

Tipp

Das vorherige Skript wurde für Ubuntu geschrieben und funktioniert möglicherweise nicht, wenn Sie eine abgeleitete Verteilung wie Linux Mint verwenden. Es ist wahrscheinlich, dass die $ID und $VERSION_ID die Variablen nicht den richtigen Werten zugewiesen werden, wodurch der URI für den wget Befehl ungültig wird. Dies $ID entspricht der Verteilung (z. B. ubuntu), während $VERSION_ID sie der spezifischen Version von Ubuntu zugeordnet ist, für die Sie Pakete erhalten möchten, z. B. 22.04 oder 23.10.

Zum Beispiel wäre ubuntu und $VERSION_ID wäre 22.04auf Ubuntu 22.04 $ID . Die URL würde wie folgt aussehen: https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb.

Sie können in einem Webbrowser zu https://packages.microsoft.com/config/ubuntu/ navigieren, um zu erfahren, welche Versionen von Ubuntu als $repo_version-Wert verwendet werden können.

Installieren von .NET

Wichtig

.NET 9 wurde am 12. November 2024 veröffentlicht. Es kann Zeit dauern, bis die Pakete in den Paket-Manager-Feeds oder für Ihre spezifische Linux-Verteilung angezeigt werden, um sie einzuschließen.

Installieren Sie .NET über den Paket-Manager mit dem sudo apt install <package-name> Befehl. Ersetzen Sie <package-name> durch den Namen des .NET-Pakets, das Sie installieren möchten. Um z. B. .NET SDK 9.0 zu installieren, verwenden Sie den Befehl sudo apt install dotnet-sdk-9.0. In der folgenden Tabelle sind die derzeit unterstützten .NET-Pakete aufgeführt (die je nach Ubuntu-Version variieren können):

Produkt Typ Paket
9.0 ASP.NET Core Laufzeit aspnetcore-runtime-9.0
9.0 .NET Laufzeit dotnet-runtime-9.0
9.0 .NET SDK dotnet-sdk-9.0
8.0 ASP.NET Core Laufzeit aspnetcore-runtime-8.0
8.0 .NET Laufzeit dotnet-runtime-8.0
8.0 .NET SDK dotnet-sdk-8.0

Tipp

Wenn Sie keine .NET-Apps erstellen, installieren Sie die ASP.NET Core Runtime, da sie die .NET Runtime enthält und auch ASP.NET Core-Apps unterstützt.

Einige Umgebungsvariablen wirken sich darauf aus, wie .NET nach der Installation ausgeführt wird. Weitere Informationen finden Sie unter .NET SDK- und CLI-Umgebungsvariablen.

Deinstallieren von .NET

Wenn Sie .NET über einen Paket-Manager installiert haben, deinstallieren Sie es auf die gleiche Weise mit dem Befehl apt-get remove:

sudo apt-get remove dotnet-sdk-6.0

Weitere Informationen finden Sie unter Deinstallieren von .NET.

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.

Verwenden von APT zum Aktualisieren von .NET

Wenn Sie .NET über einen Paket-Manager installiert haben, können Sie das Paket mit dem Befehl apt upgrade aktualisieren. Die folgenden Befehle aktualisieren z. B. das Paket dotnet-sdk-9.0 auf die neueste Version:

sudo apt update
sudo apt upgrade dotnet-sdk-9.0

Tipp

Wenn Sie Ihre Linux-Distribution seit der Installation von .NET aktualisiert haben, müssen Sie möglicherweise das Microsoft-Paket-Repository neu konfigurieren. Führen Sie die Installationsanweisungen für Ihre aktuelle Distributionsversion aus, um ein Upgrade auf das entsprechende Paket-Repository für .NET-Updates durchführen zu können.

Problembehandlung

Ab Ubuntu 22.04 kann es vorkommen, dass nur ein Teil von .NET verfügbar ist. Sie haben z. B. die Runtime und das SDK installiert, aber bei der Ausführung von dotnet --info wird nur die Runtime aufgeführt. Dies kann mit der Verwendung zweier verschiedener Paketquellen zusammenhängen. Die integrierten Ubuntu 22.04- und Ubuntu 22.10-Paketfeeds enthalten einige Versionen von .NET, aber nicht alle, und möglicherweise haben Sie auch .NET aus den Microsoft-Feeds installiert. Weitere Informationen zur Behebung dieses Problems finden Sie unter Problembehandlung bei .NET-Fehlern im Zusammenhang mit fehlenden Dateien unter Linux.

APT-Probleme

Dieser Abschnitt enthält Informationen zu häufigen Fehlern, die bei der Installation von .NET mit APT auftreten können.

Paket konnte nicht gefunden werden

Wichtig

Bei Verwendung eines Paket-Managers zum Installieren von .NET aus dem Microsoft-Paketfeed wird nur die x64-Architektur unterstützt. Andere Architekturen, z. B. Arm, werden vom Microsoft-Paketfeed nicht unterstützt.

Weitere Informationen zur Installation von .NET ohne Paket-Manager finden Sie in einem der folgenden Artikel:

Das Paket kann nicht gefunden werden/Einige Pakete konnten nicht installiert werden

Hinweis

Diese Informationen gelten nur, wenn .NET über den Microsoft-Paketfeed installiert wird.

Wenn eine Fehlermeldung wie Unable to locate package {dotnet-package} (Das Paket {dotnet-package} konnte nicht gefunden werden) oder Some packages could not be installed (Einige Pakete konnten nicht installiert werden) angezeigt wird, führen Sie die folgenden Befehle aus.

Die folgende Befehlsgruppe enthält zwei Platzhalter.

  • {dotnet-package}
    Dieser steht für das .NET-Paket, das Sie installieren, z. B. aspnetcore-runtime-8.0. Dies wird im folgenden Befehl sudo apt-get install verwendet.

Versuchen Sie zunächst, die Paketliste zu löschen:

sudo dpkg --purge packages-microsoft-prod && sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update

Versuchen Sie dann, .NET noch mal zu installieren. Wenn dies nicht funktioniert, können Sie mithilfe der folgenden Befehle eine manuelle Installation ausführen:

Wenn Sie Ubuntu 23.10 oder höher verwenden, probieren Sie die folgenden Befehle aus:

# Get OS version info which adds the $ID and $VERSION_ID variables
source /etc/os-release

# Download the Microsoft keys
sudo apt-get install -y gpg wget
wget https://packages.microsoft.com/keys/microsoft.asc
cat microsoft.asc | gpg --dearmor -o microsoft.asc.gpg

# Add the Microsoft repository to the system's sources list
wget https://packages.microsoft.com/config/$ID/$VERSION_ID/prod.list
sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list

# Move the key to the appropriate place
sudo mv microsoft.asc.gpg $(cat /etc/apt/sources.list.d/microsoft-prod.list | grep -oP "(?<=signed-by=).*(?=\])")

# Update packages and install .NET
sudo apt-get update && \
  sudo apt-get install -y {dotnet-package}

Wenn Sie eine Ubuntu-Version vor 23.10 verwenden, probieren Sie die folgenden Befehle aus:

# Define the OS version, name, and codename
source /etc/os-release

# Download the Microsoft keys
sudo apt-get install -y gpg wget
wget https://packages.microsoft.com/keys/microsoft.asc
cat microsoft.asc | gpg --dearmor -o microsoft.asc.gpg
sudo mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/

# Add the Microsoft repository to the system's sources list
wget https://packages.microsoft.com/config/$ID/$VERSION_ID/prod.list
sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list

# Set ownership
sudo chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg
sudo chown root:root /etc/apt/sources.list.d/microsoft-prod.list

# Update packages and install .NET
sudo apt-get update && \
  sudo apt-get install -y {dotnet-package}

Fehler beim Abrufen

Beim Installieren des .NET-Pakets wird möglicherweise ein Fehler wie Failed to fetch ... File has unexpected size ... Mirror sync in progress? angezeigt. Diese kann bedeuten, dass der Paketfeed für .NET mit neueren Paketversionen aktualisiert wird und Sie den Vorgang zu einem späteren Zeitpunkt wiederholen sollten. Während eines Upgrades darf der Paketfeed maximal 30 Minuten nicht verfügbar sein. Wenn dieser Fehler länger als 30 Minuten 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 App veröffentlichen, müssen Sie diese Abhängigkeiten installieren, um Ihre App ausführen zu können:

  • ca-certificates
  • libc6
  • libgcc1 (für 16.x und 18.x)
  • libgcc-s1 (für 20.x oder höher)
  • libgssapi-krb5-2
  • libicu55 (für 16.X)
  • libicu60 (für 18.X)
  • libicu66 (für 20.x)
  • libicu70 (für 22.04)
  • libicu72 (für 23.10)
  • libicu74 (für 24.04 oder höher)
  • liblttng-ust1 (für 22.x oder höher)
  • libssl1.0.0 (für 16.x)
  • libssl1.1 (für 18.x, 20.x)
  • libssl3 (für 22.x oder höher)
  • libstdc++6
  • libunwind8 (für 22.x oder höher)
  • zlib1g

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

sudo apt install zlib1g

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.

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

Nächste Schritte