Comment simplifier et réduire la taille du dossier WinSxS sous Windows

Vous vous amusez avec le dossier WinSxS ? C’est vrai que c’est bizarre de voir à quel point il grossit sans cesse. En général, c’est parce que Windows conserve d’anciennes versions des fichiers système après les mises à jour, au cas où vous voudriez revenir à une version antérieure. La plupart des gens l’ignorent, mais supprimer directement des fichiers de ce dossier est non seulement risqué, mais peut aussi endommager gravement votre système. Heureusement, il existe des moyens de réduire sa taille sans tout chambouler. Ce guide présente des méthodes pratiques, certes un peu fastidieuses, pour maîtriser ce dossier et libérer votre espace disque des anciens fichiers Windows. Voyez cela comme un nettoyage plutôt que comme un bricolage. Après tout, l’objectif est de libérer de l’espace en toute sécurité et, qui sait, peut-être même de rendre les mises à jour moins volumineuses.

Comment vérifier la taille réelle du dossier WinSxS sous Windows 10 ?

La plupart des gens consultent le dossier C:\Windows\WinSxS avec l’Explorateur de fichiers et voient un nombre impressionnant de fichiers, mais c’est trompeur. L’Explorateur Windows, et même certains gestionnaires de fichiers tiers, considèrent les liens physiques comme des copies complètes, ce qui donne l’impression que le dossier est plus volumineux qu’il ne l’est réellement. C’est pourquoi je recommande d’utiliser l’ outil DISM pour obtenir une analyse fiable : il est conçu pour ce genre de situation.

Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore

L’exécution de cette commande affiche tous les détails : la taille indiquée, l’espace récupérable et l’espace libre potentiel, le tout en une seule opération. Sur une configuration donnée, la taille affichée peut être de 8, 44 Go (fichiers référencés et résiduels inclus), mais la taille réelle sur le disque, en raison des liens physiques, est probablement plus proche de 8, 15 Go. Pour obtenir la taille réelle *sur le disque*, vous pouvez également utiliser un outil Sysinternals comme `du`, qui indique l’utilisation exacte de l’espace disque, en ignorant les liens physiques.

Comment nettoyer le dossier WinSxS en toute sécurité ?

C’est là que les choses se compliquent un peu. Windows dispose d’une commande pratique appelée DISM qui permet de nettoyer le magasin de composants sans risquer la stabilité du système. La méthode la plus simple pour commencer est la suivante :

Dism.exe /Online /Cleanup-Image /StartComponentCleanup

Cette opération supprime les fichiers obsolètes, c’est-à-dire les anciennes versions que Windows conserve par mesure de sécurité et pour permettre la restauration du système. C’est un peu comme supprimer des sauvegardes, mais Windows garde le contrôle.

Ensuite, vérifiez l’espace libéré avec :

Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore

Sur mon ordinateur, cela permettait généralement d’économiser environ 2 à 3 Go, ce qui est plutôt bien. Si vous souhaitez aller plus loin et supprimer *toutes* les anciennes versions, sur les versions récentes de Windows, vous pouvez exécuter la commande suivante :

Dism.exe /Online /Cleanup-Image /StartComponentCleanup /ResetBase

Cette méthode est plus radicale : elle supprime toutes les versions précédentes des composants et ne conserve que la plus récente. Attention : après cette opération, il sera impossible de désinstaller les anciennes mises à jour ou de revenir à une version antérieure. C’est comme rendre les choses irréversibles ; ne l’utilisez donc que si vous êtes sûr de vous.

Autre astuce simple : utilisez l’outil Nettoyage de disque. Exécutez cleanmgr en tant qu’administrateur, sélectionnez le disque système, cliquez sur Nettoyer les fichiers système et cochez Nettoyage de Windows Update. Cela supprime les fichiers de mise à jour résiduels qui s’accumulent en arrière-plan et occupent de l’espace.

Windows planifie également une tâche en arrière-plan dans le Planificateur de tâches (sous \Microsoft\Windows\Servicing ) qui exécute automatiquement StartComponentCleanup environ une fois par mois. Vous pouvez la déclencher manuellement avec :

schtasks.exe /Run /TN "\Microsoft\Windows\Servicing\StartComponentCleanup"

C’est un peu comme forcer un nettoyage que Windows essaie de faire automatiquement de toute façon.

Qu’en est-il de la suppression des rôles et fonctionnalités inutilisés ?

Pour gagner encore plus d’espace, il est possible de supprimer les fonctionnalités et les rôles Windows inutilisés. Par exemple, sur Windows Server, vous pouvez exécuter la commande suivante :

Uninstall-WindowsFeature 

Mais sous Windows 10, cette fonctionnalité n’est pas disponible nativement. Il faut utiliser DISM pour désactiver des fonctionnalités :

DISM.exe /Online /Disable-Feature /Featurename:TelnetClient /Remove

Cet outil supprime les fichiers de la fonctionnalité de WinSxS et réduit ainsi l’encombrement. Attention : il ne supprime pas les dépendances ni les fichiers résiduels. Il s’agit donc d’un outil de réduction manuelle, et non d’un nettoyage en profondeur. De plus, n’utilisez-le que si vous comprenez parfaitement le rôle de la fonctionnalité, sous peine de provoquer des dysfonctionnements.

Activer la compression NTFS sur WinSxS (pour les plus courageux)

C’est un peu la solution de dernier recours. Si vous avez déjà fait le maximum de ménage, vous pouvez essayer de compresser le dossier avec la compression NTFS. Ce n’est pas parfait, et Windows fonctionne très bien avec des fichiers système compressés, mais cela permet de réduire la taille, surtout sur les SSD où l’espace disque est précieux.

Remarque : Il est fortement conseillé de sauvegarder votre système au préalable ; toute modification des permissions ou compression des dossiers système peut entraîner des problèmes si elle n’est pas effectuée avec précaution. Voici, en résumé, comment cela fonctionne :

  1. Ouvrez une invite de commandes d’administrateur.
  2. Arrêtez les services Windows Installer et TrustedInstaller pour éviter les conflits :
    sc stop msiserver sc stop TrustedInstaller sc config msiserver start= disabled sc config TrustedInstaller start= disabled
  3. Sauvegardez les ACL (autorisations) actuelles par précaution :
    icacls "%WINDIR%\WinSxS" /save "%WINDIR%\WinSxS_NTFS.acl" /t
  4. Prenez possession du dossier :
    takeown /f "%WINDIR%\WinSxS" /r
  5. Accordez à votre utilisateur des autorisations de contrôle total :
    icacls "%WINDIR%\WinSxS" /grant "%USERDOMAIN%\%USERNAME%":(F) /t
  6. Appliquer la compression NTFS :
    compact /s:"%WINDIR%\WinSxS" /c /a /i *
  7. Rétablir la propriété et les autorisations après :
    • Retour de la propriété à TrustedInstaller :
      icacls "%WINDIR%\WinSxS" /setowner "NT SERVICE\TrustedInstaller" /t
    • Listes de contrôle d’accès (ACL) d’origine :
      icacls "%WINDIR%" /restore "%WINDIR%\WinSxS_NTFS.acl"
  8. Relancer les services :
    sc config msiserver start= demand sc config TrustedInstaller start= demand

Après avoir effectué toutes ces opérations, vérifiez à nouveau la taille. Sur un ordinateur performant, cela peut réduire considérablement la taille du fichier, par exemple de 9, 4 Go à environ 6, 5 Go. Attention cependant : cette opération sollicite davantage le processeur, car Windows décompresse les fichiers à la volée. Il s’agit donc d’un compromis.

En réalité, ces méthodes ne seront pas parfaites et il vous faudra peut-être en essayer plusieurs avant de trouver la bonne. N’oubliez pas que toute manipulation de fichiers système comporte des risques ; n’y allez donc pas à l’aveuglette si vous n’êtes pas prêt à en assumer les conséquences.

Résumé

  • Utilisez DISM pour analyser et nettoyer le magasin de composants
  • Vérifier l’espace gagné après les commandes de nettoyage
  • Supprimez les fonctionnalités inutilisées avec DISM ou PowerShell (serveur uniquement)
  • Comprimez WinSxS avec la compression NTFS en dernier recours.
  • Toujours sauvegarder vos données avant toute modification importante, surtout lorsque vous touchez aux permissions.

Conclure

Réduire la taille du dossier WinSxS n’est pas une mince affaire, mais avec de la patience et les bonnes commandes, c’est possible sans problème. Voir sa taille diminuer de quelques gigaoctets procure une petite satisfaction dans la lutte contre le désordre. Un conseil : sauvegardez d’abord et ne vous lancez pas dans une opération plus ambitieuse que ce que vous maîtrisez. J’espère que cela vous donnera un bon point de départ ; croisons les doigts pour que cela permette à certains de gagner quelques gigaoctets.