Procédure de suppression du runtime et du kit de développement logiciel (SDK) .NET
Au fil du temps, lorsque vous installez des versions mises à jour du runtime et du kit de développement logiciel (SDK) .NET, vous pouvez supprimer les versions obsolètes de .NET de votre ordinateur. La désinstallation des versions antérieures du runtime peut changer le runtime choisi pour exécuter des applications de framework partagées, comme détaillé dans l’article sur la sélection de versions .NET.
Dois-je supprimer une version ?
Les comportements de sélection de versions .NET et la compatibilité du runtime de .NET entre les mises à jour permettent la suppression sécurisée des versions précédentes. Les mises à jour du runtime .NET sont compatibles dans une bande de versions majeure telle que 8.x et 7.x. En outre, les versions plus récentes du kit de développement logiciel (SDK) .NET conservent généralement la possibilité de créer des applications qui ciblent les versions précédentes du runtime de manière compatible.
En règle générale, vous avez uniquement besoin de la dernière version du SDK et de la dernière version des correctifs pour les Runtimes requis par votre application. Les instances où vous souhaitez peut-être conserver des versions antérieures du kit de développement logiciel (SDK) ou du runtime incluent la maintenance des applications basées sur project.json. Si votre application ne nécessite pas de versions antérieures du SDK ou du Runtime pour une raison particulière, vous pouvez supprimer les versions antérieures en toute sécurité.
Déterminer ce qui est installé
La CLI .NET propose des options que vous pouvez utiliser pour répertorier les versions du kit de développement logiciel (SDK) et du runtime installés sur votre ordinateur. Utilisez dotnet --list-sdks
pour afficher la liste des kits de développement logiciel (SDK) installés et dotnet --list-runtimes
pour la liste des runtimes. Pour plus d’informations, consultez Comment vérifier que .NET est déjà installé.
Désinstallation de .NET
.NET utilise la page de configuration Applications et fonctionnalités Windows ou ou Applications et Applications installées pour supprimer les versions du runtime et du SDK .NET. Utilisez le menu « Démarrer » pour rechercher Ajouter ou supprimer des programmes pour ouvrir la page des paramètres, comme le montre l’image suivante : image montrant la boîte de dialogue Applications et fonctionnalités. Vous pouvez rechercher core ou .net pour filtrer et afficher les versions installées de .NET.
Dans la page des paramètres, recherchez .net pour rechercher les versions installées sur votre ordinateur. Sélectionnez ...>Désinstaller pour désinstaller l’extension. Si vous utilisez Windows 10, sélectionnez le bouton Désinstaller pour l’élément que vous souhaitez désinstaller. L’image suivante montre la page de configuration Applications installées sur Windows 11 :
Important
Si l’élément que vous désinstallez indique qu’il provient de Visual Studio, utilisez Visual Studio Installer pour supprimer ces versions de .NET.
La meilleure façon de désinstaller .NET consiste à faire la même action que vous avez utilisée pour installer .NET. Les spécificités dépendent de votre distribution Linux choisie et de la méthode d’installation.
Les préversions sont installées manuellement et doivent être désinstallées manuellement. Pour plus d’informations, consultez la section Avec le script ou manuellement.
Important
Pour les installations de Red Hat, consultez la documentation sur les produits Red Hat pour .NET.
Vous pouvez supprimer les types suivants d’installations .NET :
Gestionnaire de package
Il n’est pas nécessaire de désinstaller en premier le kit de développement logiciel (SDK) .NET lors de la mise à niveau à l’aide d’un gestionnaire de package, sauf si vous effectuez une mise à niveau à partir d’une version préliminaire installée manuellement. Les commandes update
ou refresh
du gestionnaire de package suppriment automatiquement l’ancienne version une fois l’installation d’une version plus récente terminée. Si une version préliminaire est installée, désinstallez-la.
Si vous avez installé .NET à l’aide d’un gestionnaire de package, utilisez ce même gestionnaire de package pour désinstaller le kit de développement logiciel (SDK) ou le runtime .NET. Les installations .NET prennent en charge les gestionnaires de package les plus populaires. Consultez la documentation du gestionnaire de package de votre distribution pour connaître la syntaxe précise dans votre environnement :
- apt-get(8) est utilisé sur les systèmes Debian, y compris Ubuntu.
- yum(8) est utilisé sur Fedora, CentOS Stream, Oracle Linux et RHEL.
- zypper(8) est utilisé sur les systèmes openSUSE et SLES (SUSE Linux Enterprise System).
- dnf(8) est utilisé sur les systèmes Fedora.
Dans presque tous les cas, la commande de suppression d’un package est remove
.
Le nom du package pour l’installation du kit de développement logiciel (SDK) .NET pour la plupart des gestionnaires de package est dotnet-sdk
, suivi du numéro de version. Seuls les numéros de version majeure et mineure sont nécessaires : par exemple, le SDK .NET version 8.0.200 peut être référencé en tant que package dotnet-sdk-8.0
.
Pour les machines sur lesquelles seul le runtime a été installé, et non le kit de développement logiciel (SDK), le nom du package est dotnet-runtime-<version>
pour le runtime .NET et aspnetcore-runtime-<version>
pour l’ensemble de la pile de runtime.
Avec le script ou manuellement
Si vous avez installé .NET avec le script dotnet-install ou en extrayant un tarball, vous devez supprimer .NET avec la méthode manuelle.
Quand vous installez manuellement .NET, il est généralement installé dans le répertoire /usr/share/dotnet/
, /usr/lib/dotnet/
ou $HOME/.dotnet
. Le SDK, le runtime et l’hôte .NET sont installés dans des sous-répertoires distincts. Ces répertoires de « composant » contiennent un répertoire pour chaque version de .NET. Quand vous supprimez un répertoire avec version, vous supprimez la version de .NET correspondante de votre système. Ces répertoires peuvent varier en fonction de votre distribution Linux.
Vous pouvez utiliser trois commandes pour découvrir où .NET est installé : dotnet --list-sdks
pour les SDK, dotnet --list-runtimes
pour les runtimes et dotnet --info
pour tout. Ces commandes ne listent pas l’hôte .NET. Pour déterminer quels hôtes sont installés, vérifiez le répertoire /usr/share/dotnet/host/fxr/
. La liste suivante représente les répertoires d’une version spécifique de .NET, désignée par la variable $version
:
SDK :
/usr/share/dotnet/sdk/$version/
Runtime :
Le runtime est basé sur des runtimes de produit .NET spécifiques, tels que
Microsoft.AspNetCore.All
ouMicrosoft.NETCore.App
(le runtime .NET proprement dit). Ceux-ci sont installés dans le répertoire/usr/share/dotnet/shared/$product/$version
, où$product
représente le runtime de produit. Par exemple, vous pouvez voir les répertoires suivants :/usr/share/dotnet/shared/Microsoft.NETCore.App/$version/ /usr/share/dotnet/shared/Microsoft.AspNetCore.App/$version/ /usr/share/dotnet/shared/Microsoft.AspNetCore.All/$version/
Hôte .NET
/usr/share/dotnet/host/fxr/$version/
Utilisez la commande rm -rf
pour supprimer une version de .NET. Par exemple, pour supprimer le SDK 6.0.406, exécutez la commande suivante :
sudo rm -rf /usr/share/dotnet/sdk/6.0.406
Important
Les répertoires de la version peuvent ne pas correspondre à la « version » que vous désinstallez. Les runtimes et kits de développement logiciel (SDK) individuels, installés avec une seule version de .NET, peuvent être de versions différentes. Par exemple, vous pouvez avoir installé le runtime ASP.NET Core 8. Ce dernier a installé le runtime ASP.NET Core 8.0.2 et le runtime .NET 8.0.8. Chacun a un répertoire avec une version différente. Pour plus d’informations, consultez Vue d’ensemble de la façon dont .NET est versionné.
Quand vous installez manuellement .NET, il est généralement installé dans le répertoire /usr/local/share/dotnet/
ou $HOME/.dotnet
. Le kit de développement logiciel (SDK), le runtime et l’hôte .NET sont installés dans des sous-répertoires distincts. Ces répertoires de « composant » contiennent un répertoire pour chaque version de .NET. Quand vous supprimez un répertoire avec version, vous supprimez la version de .NET correspondante de votre système. Ces répertoires peuvent varier en fonction de votre version de macOS.
Vous pouvez utiliser trois commandes pour découvrir où .NET est installé : dotnet --list-sdks
pour les SDK, dotnet --list-runtimes
pour les runtimes et dotnet --info
pour tout. Ces commandes ne listent pas l’hôte .NET. Pour déterminer quels hôtes sont installés, vérifiez le répertoire /usr/local/share/dotnet/host/fxr/
. La liste suivante représente les répertoires d’une version spécifique de .NET, désignée par la variable $version
:
SDK :
/usr/local/share/dotnet/sdk/$version/
Runtime :
Le runtime est basé sur des runtimes de produit .NET spécifiques, tels que
Microsoft.AspNetCore.All
ouMicrosoft.NETCore.App
(le runtime .NET proprement dit). Ceux-ci sont installés dans le répertoire/usr/local/share/dotnet/shared/$product/$version
, où$product
représente le runtime de produit. Vous pouvez par exemple voir les répertoires suivants :/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/
Hôte .NET
/usr/local/share/dotnet/host/fxr/$version/
Utilisez la commande rm -rf
pour supprimer une version de .NET. Par exemple, pour supprimer le SDK 6.0.406, exécutez la commande suivante :
sudo rm -rf /usr/local/share/dotnet/sdk/6.0.406
Important
Les répertoires de la version peuvent ne pas correspondre à la « version » que vous désinstallez. Les runtimes et kits de développement logiciel (SDK) individuels, installés avec une seule version de .NET, peuvent être de versions différentes. Par exemple, vous pouvez avoir installé le runtime ASP.NET Core 8. Ce dernier a installé le runtime ASP.NET Core 8.0.2 et le runtime .NET 8.0.8. Chacun a un répertoire avec une version différente. Pour plus d’informations, consultez Vue d’ensemble de la façon dont .NET est versionné.
Important
Si vous utilisez un Mac basé sur Arm, tel qu’un avec une puce M1, passez en revue les chemins de répertoire décrits dans Installer .NET sur des Mac basés sur Arm.
Outil de désinstallation .NET
L'outil de désinstallation .NET vous permet de supprimer les SDK .NET et les runtimes d'un système. Une collection d’options est disponible pour spécifier les versions à désinstaller. Pour plus d'informations, voir l'aperçu de l'outil de désinstallation .NET.
Supprimer le répertoire de secours NuGet
Avant le SDK .NET Core 3.0, les programmes d’installation du SDK .NET Core utilisaient un répertoire nommé NuGetFallbackFolder pour stocker un cache de packages NuGet. Ce cache a été utilisé pendant des opérations telles que dotnet restore
ou dotnet build /t:Restore
. NuGetFallbackFolder se trouvait dans le dossier sdk d’installation de .NET. Par exemple, il pouvait s’agir de C:\Program Files\dotnet\sdk\NuGetFallbackFolder sur Windows et de /usr/local/share/dotnet/sdk/NuGetFallbackFolder sur macOS.
Vous souhaiterez peut-être supprimer ce répertoire, si :
- Vous développez uniquement à l’aide du Kit de développement logiciel (SDK) .NET Core 3.0 ou .NET 5 ou versions ultérieures.
- Vous développez à l’aide des versions du kit de développement logiciel (SDK) .NET Core antérieures à la version 3.0, mais vous pouvez travailler en ligne.
Si vous souhaitez supprimer le répertoire de secours NuGet, vous pouvez le supprimer, mais vous aurez besoin de privilèges administratifs pour le faire.
Il n’est pas recommandé de supprimer le répertoire dotnet. Cela supprime tous les outils globaux que vous avez installés précédemment. En outre, sur Windows :
- Vous interromprez Visual Studio 2019 version 16.3 et les versions ultérieures. Vous pouvez exécuter Réparer aux fins de récupération.
- S’il existe des entrées du kit SDK .NET Core dans la boîte de dialogue Applications et fonctionnalités, elles seront orphelines.