Ta bort .NET Runtime och SDK

När du installerar uppdaterade versioner av .NET Runtime och SDK kan du med tiden vilja ta bort inaktuella versioner av .NET från datorn. Om du avinstallerar äldre versioner av körningen kan den körning som valts för att köra delade ramverksprogram ändras, enligt beskrivningen i artikeln om val av .NET-version.

Ska jag ta bort en version?

. NET-versionsvalsbeteendena och körningskompatibiliteten för .NET mellan uppdateringar möjliggör säker borttagning av tidigare versioner. .NET-körningsuppdateringar är kompatibla inom ett huvudversionsband, till exempel 7.x och 6.x. Dessutom bibehåller nyare versioner av .NET SDK vanligtvis möjligheten att skapa program som riktar sig mot tidigare versioner av körningen på ett kompatibelt sätt.

I allmänhet behöver du bara den senaste SDK:t och den senaste korrigeringsversionen av de körningar som krävs för ditt program. Instanser där du kanske vill behålla äldre SDK- eller körningsversioner är att underhålla project.json-baserade program. Om inte ditt program har specifika orsaker till tidigare SDK:er eller körningar kan du ta bort äldre versioner på ett säkert sätt.

Ta reda på vad som är installerat

.NET CLI har alternativ som du kan använda för att lista de versioner av SDK och körning som är installerade på datorn. Använd dotnet --list-sdks för att se listan över installerade SDK:er och dotnet --list-runtimes för listan över körningar. Mer information finns i Så här kontrollerar du att .NET redan är installerat.

Avinstallera .NET

.NET använder dialogrutan Windows Apps &-funktioner för att ta bort versioner av .NET-runtime och SDK. Följande bild visar dialogrutan Appar och funktioner . Du kan söka efter core eller .net för att filtrera och visa installerade versioner av .NET.

Lägg till/ta bort program för att ta bort .NET

Välj de versioner som du vill ta bort från datorn och klicka på Avinstallera.

Det bästa sättet för dig att avinstallera .NET är att spegla den åtgärd som du använde för att installera .NET. Detaljerna beror på din valda Linux-distribution och installationsmetoden.

Förhandsversioner installeras manuellt och måste avinstalleras manuellt. Mer information finns i avsnittet Skriptad eller manuell .

Viktigt!

Information om Red Hat-installationer finns i Red Hat-produktdokumentationen för .NET.

Du kan ta bort följande typer om .NET-installationer:

Pakethanterare

Du behöver inte först avinstallera .NET SDK när du uppgraderar det med hjälp av en pakethanterare, såvida du inte uppgraderar från en förhandsversion som installerades manuellt. Pakethanteraren update eller refresh kommandona tar automatiskt bort den äldre versionen när en nyare version har installerats. Om du har en förhandsversion installerad avinstallerar du den.

Om du har installerat .NET med hjälp av en pakethanterare använder du samma pakethanterare för att avinstallera .NET SDK eller runtime. .NET-installationer stöder de flesta populära pakethanterare. I dokumentationen för distributionens pakethanterare finns den exakta syntaxen i din miljö:

  • apt-get(8) används av Debianbaserade system, inklusive Ubuntu.
  • yum(8) används på Fedora, CentOS, Oracle Linux och RHEL.
  • zypper(8) används på openSUSE och SUSE Linux Enterprise System (SLES).
  • dnf(8) används på Fedora.

I nästan alla fall är removekommandot för att ta bort ett paket .

Paketnamnet för .NET SDK-installationen för de flesta pakethanterare är dotnet-sdk, följt av versionsnumret. Endast huvud- och delversionsnumren är nödvändiga: till exempel kan .NET SDK version 8.0.200 refereras till som paketet dotnet-sdk-8.0.

För datorer som bara har installerat körningen och inte SDK:t är dotnet-runtime-<version> paketnamnet för .NET-körningen och aspnetcore-runtime-<version> för hela körningsstacken.

Skript eller manuell

Om du har installerat .NET med hjälp av dotnet-install-skriptet eller genom att extrahera en tarball måste du ta bort .NET med hjälp av den manuella metoden.

När du installerar .NET manuellt installeras det vanligtvis i /usr/share/dotnet/katalogen , /usr/lib/dotnet/eller $HOME/.dotnet . SDK:n, runtime- och .NET-värden installeras i separata underkataloger. Dessa "komponentkataloger" innehåller en katalog för varje version av .NET. Genom att ta bort de versionshanterade katalogerna tar du bort den versionen av .NET från systemet. Dessa kataloger kan variera beroende på din Linux-distribution.

Det finns tre kommandon som du kan använda för att identifiera var .NET är installerat: dotnet --list-sdks för SDK:er, dotnet --list-runtimes för körning och dotnet --info för allt. Dessa kommandon visar inte .NET-värden. Kontrollera katalogen om du vill ta reda på /usr/share/dotnet/host/fxr/ vilka värdar som är installerade. Följande lista representerar katalogerna för en specifik version av .NET, där variabeln $version representerar versionen av .NET:

  • SDK:

    /usr/share/dotnet/sdk/$version/

  • Körning:

    Körningen baseras på specifika .NET-produktkörningar, till exempel Microsoft.AspNetCore.All eller Microsoft.NETCore.App (.NET-körningen specifikt). Dessa installeras i /usr/share/dotnet/shared/$product/$version katalogen, där $product är produktkörningen. Du kan till exempel se följande kataloger:

    /usr/share/dotnet/shared/Microsoft.NETCore.App/$version/
    /usr/share/dotnet/shared/Microsoft.AspNetCore.App/$version/
    /usr/share/dotnet/shared/Microsoft.AspNetCore.All/$version/
    
  • .NET-värd

    /usr/share/dotnet/host/fxr/$version/

rm -rf Använd kommandot för att ta bort en version av .NET. Om du till exempel vill ta bort SDK:t 6.0.406 kör du följande kommando:

sudo rm -rf /usr/share/dotnet/sdk/6.0.406

Viktigt!

Versionskatalogerna kanske inte matchar den "version" som du avinstallerar. De enskilda körnings- och SDK:er som är installerade med en enda .NET-version kan ha olika versioner. Du kan till exempel ha installerat ASP.NET Core 8 Runtime, som installerade 8.0.2-ASP.NET Core-körningen och 8.0.8 .NET-körningen. Var och en har en annan version av katalogen. Mer information finns i Översikt över hur .NET är versionshanterat.

När du installerar .NET manuellt installeras det vanligtvis i /usr/local/share/dotnet/ katalogen eller $HOME/.dotnet . SDK-, runtime- och .NET-värden installeras i separata underkataloger. Dessa "komponentkataloger" innehåller en katalog för varje version av .NET. Genom att ta bort de versionshanterade katalogerna tar du bort den versionen av .NET från systemet. Dessa kataloger kan variera beroende på din macOS-version.

Det finns tre kommandon som du kan använda för att identifiera var .NET är installerat: dotnet --list-sdks för SDK:er, dotnet --list-runtimes för körning och dotnet --info för allt. Dessa kommandon visar inte .NET-värden. Kontrollera katalogen om du vill ta reda på /usr/local/share/dotnet/host/fxr/ vilka värdar som är installerade. Följande lista representerar katalogerna för en specifik version av .NET, där variabeln $version representerar versionen av .NET:

  • SDK:

    /usr/local/share/dotnet/sdk/$version/

  • Körning:

    Körningen baseras på specifika .NET-produktkörningar, till exempel Microsoft.AspNetCore.All eller Microsoft.NETCore.App (.NET-körningen specifikt). Dessa installeras i /usr/local/share/dotnet/shared/$product/$version katalogen, där $product är produktkörningen. Du kan till exempel se följande kataloger:

    /usr/local/share/dotnet/shared/Microsoft.NETCore.App/$version/dotnet --info
    /usr/local/share/dotnet/shared/Microsoft.AspNetCore.App/$version/
    /usr/local/share/dotnet/shared/Microsoft.AspNetCore.All/$version/
    
  • .NET-värd

    /usr/local/share/dotnet/host/fxr/$version/

rm -rf Använd kommandot för att ta bort en version av .NET. Om du till exempel vill ta bort SDK:t 6.0.406 kör du följande kommando:

sudo rm -rf /usr/local/share/dotnet/sdk/6.0.406

Viktigt!

Versionskatalogerna kanske inte matchar den "version" som du avinstallerar. De enskilda körnings- och SDK:er som är installerade med en enda .NET-version kan ha olika versioner. Du kan till exempel ha installerat ASP.NET Core 8 Runtime, som installerade 8.0.2-ASP.NET Core-körningen och 8.0.8 .NET-körningen. Var och en har en annan version av katalogen. Mer information finns i Översikt över hur .NET är versionshanterat.

Viktigt!

Om du använder en Arm-baserad Mac, till exempel en med ett M1-chip, granskar du katalogsökvägarna som beskrivs i Installera .NET på Arm-baserade Mac-datorer.

Avinstallationsverktyget för .NET

Med .NET-avinstallationsverktyget (dotnet-core-uninstall) kan du ta bort .NET SDK:er och körningskörningar från ett system. Det finns en samling alternativ för att ange vilka versioner som ska avinstalleras.

Kommentar

För närvarande stöder inte .NET-avinstallationsverktyget .NET 8+. Mer information om verktygets versionsschema finns i Översikt över GitHub – dotnet-uninstall-tool.

Visual Studio-beroende av .NET SDK-versioner

Före Visual Studio 2019 version 16.3 kallade Visual Studio-installationsprogram det fristående SDK-installationsprogrammet för .NET Core version 2.1 eller 2.2. Därför visas SDK-versionerna i dialogrutan Windows-appar och -funktioner . Om du tar bort .NET SDK:er som har installerats av Visual Studio med hjälp av det fristående installationsprogrammet kan det bryta Visual Studio. Om Visual Studio har problem när du har avinstallerat SDK:er kör du Reparera på den specifika versionen av Visual Studio. I följande tabell visas några av Visual Studio-beroendena för .NET Core SDK-versioner:

Visual Studio-version .NET Core SDK-version
Visual Studio 2019 version 16.2 .NET Core SDK 2.2.4xx, 2.1.8xx
Visual Studio 2019 version 16.1 .NET Core SDK 2.2.3xx, 2.1.7xx
Visual Studio 2019 version 16.0 .NET Core SDK 2.2.2xx, 2.1.6xx
Visual Studio 2017 version 15.9 .NET Core SDK 2.2.1xx, 2.1.5xx
Visual Studio 2017 version 15.8 .NET Core SDK 2.1.4xx

Från och med Visual Studio 2019 version 16.3 ansvarar Visual Studio för sin egen kopia av .NET SDK. Därför ser du inte längre dessa SDK-versioner i dialogrutan Appar och funktioner .

Ta bort NuGet-återställningskatalogen

Före .NET Core 3.0 SDK använde .NET Core SDK-installationsprogrammet en katalog med namnet NuGetFallbackFolder för att lagra en cache med NuGet-paket. Den här cachen användes under åtgärder som dotnet restore eller dotnet build /t:Restore. NuGetFallbackFolder fanns under mappen sdk där .NET är installerat. Det kan till exempel finnas på C:\Program Files\dotnet\sdk\NuGetFallbackFolder i Windows och på /usr/local/share/dotnet/sdk/NuGetFallbackFolder på macOS.

Du kanske vill ta bort den här katalogen om:

  • Du utvecklar bara med .NET Core 3.0 SDK eller .NET 5 eller senare versioner.
  • Du utvecklar med hjälp av .NET Core SDK-versioner tidigare än 3.0, men du kan arbeta online.

Om du vill ta bort NuGet-reservkatalogen kan du ta bort den, men du behöver administratörsbehörighet för att göra det.

Vi rekommenderar inte att du tar bort dotnet-katalogen . Detta skulle ta bort alla globala verktyg som du tidigare har installerat. Dessutom i Windows:

  • Du bryter Visual Studio 2019 version 16.3 och senare versioner. Du kan köra Reparera för att återställa.
  • Om det finns .NET Core SDK-poster i dialogrutan Appar och funktioner blir de överblivna.