WinSxS : Magasin des composants Windows
- Malekal_morte
- Site Admin
- Messages : 89280
- Inscription : 10 sept. 2005 13:57
- Contact :
WinSxS : Magasin des composants Windows
Cette page explique la présence du dossier WinSxS (c:\Windows\WinSxS) apparu depuis Windows XP, il a été considérablement amélioré depuis Windows Vista. Ce dossier contient le "Magasin des composants", un ensemble de librairies fournit sous forme de "Package" ( en français "Paquet" ) utilisable par les applications et par Windows lui même.
Ce dossier WinSxS est particulièrement important.
Si des Packages ou fichiers sont endommagés, :
Il s'agit du "Magasin des composants" qui prend en charge les fonctions nécessaires à la Personnalisation et aux "Mises à jour" Windows, comme :
Le dossier WinSxS est relativement volumineux, des utilisateurs peuvent être tentés de supprimer des fichiers ou dossiers, ce qui est bien sûr une très mauvaise idée. Le dossier contenant de multitudes de fichiers et sous-dossiers, on a parfois l'impression que des fichiers sont en doubles alors qu'il s'agit seulement de liens symboliques. WinSxS effectue aussi beaucoup de sauvegardes pour revenir en arrière en cas de conflits ou fichiers corrompus. Par conséquent, éliminer ces sauvegardes est une mauvaise initiative.
La gestion des Packages se fait à l'aide de l'utilitaire DISM, en natif depuis Windows 8. Ce dernier est accessible depuis l'invite de commandes en Administrateur. Il permet d'installer, d'obtenir des infos ou supprimer des Packages. Les paquets sont au format Microsoft Cabinet (.CAB) ou au format Windows Update Stand-alone Installer (.MSU).

La commande Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore va retourner des informations sur le "Magasin des composants", on constate notamment que la sauvegarde des paquets occupe un poids total d'environ 2Go.

La MSDN de Microsoft explique les détails des notations.
La commande Dism.exe /Online /Get-Packages va lister les paquets installés.

On les retrouve sous forme de dossiers dans WinSxS :

La commande Dism.exe /Online /Get-PackageInfo /PackageName:Microsoft-Windows-Prerelease-Client-Package~31bf3856ad364e35~amd64~~10.0.10240.16384
Dism /Image:C:\test\offline /Get-PackageInfo /PackagePath:C:\packages\package.cab
Dism /Image:C:\test\offline /Get-PackageInfo /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0 permet d'obtenir les informations sur un paquet en particulier.

La commande Dism.exe /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0
Dism /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0 /PackageName:Microsoft-Windows-MediaPlayer-Package~31bf3856ad364e35~x86~~6.1.6801.0
Dism /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackagePath:C:\packages\package1.cab /PackagePath:C:\packages\package2.cab permet d'installer un paquet.
La commande Dism.exe /online /remove-package /packagename:Package_for_KB2919355~31bf3856ad364e35~amd64~~6.3.1.14 permet de supprimer en indiquant le nom d'un paquet ( packagename )
La MSDN de Microsoft explique les détails des paramètres disponibles pour DISM
Nettoyer WinSxS
Depuis Windows 8 & Windows 8.1, des fonctionnalités de nettoyage ont été ajoutées sur DISM. Malheureusement, ces fonctionnalités ne sont pas disponibles sur Windows Vista et Windows Seven.
La fonctionnalité StartComponentCleanup permet à DISM de nettoyer WinSxS.
On notera qu'une tâche planifiée "\Microsoft\Windows\Servicing\StartComponentCleanup" a aussi été ajoutée. Elle a pour but de supprimer les composants qui n'ont pas été utilisés depuis 30 jours.
Ci-dessous, la tâche planifiée StartComponentCleanup

Lorsque l'on exécute celle-ci, TiWorker.exe ( Windows Modules Installer Worker ) se lance.
Suivant les opérations, la tâche peut prendre plusieurs longues minutes...

La commande Dism.exe /online /Cleanup-Image /StartComponentCleanup permet de lancer le nettoyage.
NOTE : Ne reprenez pas de mauvaises habitudes, ne lancez pas cette commande tous les jours car ça ne sert strictement à rien.
La commande: Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase contient le paramètre /ResetBase qui permet de supprimer les sauvegardes WinSxS. Je vous déconseille fortement de l'utiliser car si un fichier ou une mise à jour rencontre des problèmes, vous risquez de ne plus pouvoir revenir en arrière. Enfin, la commande Dism.exe /online /Cleanup-Image /SPSuperseded contient le paramètre /SPSuperseded qui permet de réduire la quantité d’espace disque utilisée par les mises à jour cumulatives (Service Pack)
L'utilitaire cleanmgr permet aussi de le faire, lire la page : Comment libérer de l’espace disque avec cleanmgr.

WinSxS : Réparer les fichiers systèmes corrompus etc
Comme évoqué en introduction, si des fichiers systèmes / Packages sont corrompus, cela peut occasionner des problèmes de fonctionnement sur des applications et sur Windows. L'outil SFC permet d'effectuer une analyse des fichiers systèmes. Dans certains cas il pourra restaurer des fichiers systèmes du magasin des composants (WinSxS) mais en règle générale, il n'y parviendra pas. L'outil DISM permet aussi de corriger ce type d'incohérences sur le magasin des composants et de restaurer des fichiers systèmes.
La commande Dism.exe /Online /Cleanup-image /Restorehealth contient le paramètre /Restorehealth qui permet de réparer le magasin des composants. Pour rappel, ce paramètre n'est disponible qu'à partir de Windows 8 !
Les rapports se sont situés dans :
%SYSTEMROOT%\Logs\CBS\CheckSUR.log
%SYSTEMROOT%\Logs\CBS\CheckSUR.persist.log
La commande précédente va scanner les fichiers systèmes et restaurer à partir de fichiers en ligne. Une connexion à Internet doit donc être établie pour que ça fonctionne, notamment avec certains composants utilisés par Windows Update. Si ce n'est pas le cas, vous pouvez restaurer les Packages à partir du DVD de Windows en ajoutant le paramètre /Source. Exemple avec la commande Dism.exe /Online /Cleanup-Image /RestoreHealth /Source:H:\sources\sxs /LimitAccess où H:\sources pointe sur un dossier du DVD.
Lorsque DISM n'est pas capable de réparer des fichiers systèmes, utiliser le programme SFCFix. Sur le forum, nous avons eu un cas récemment avec une mise à jour de Windows qui a corrompu certains fichiers systèmes, ce qui occasionné d'importants ralentissements. Voir le sujet : KB3022345 : corruptions de fichiers systèmes
Conclusion
Le magasin des composants de Windows est donc un composant essentiel de Windows, qui lorsqu'il est endommagé, peut cause de grave dysfonctionnements. On regrettera que l'outil DISM ne soit pas pleinement fonctionnel pour les versions antérieures à Windows 8.
liens internes :
Ce dossier WinSxS est particulièrement important.
Si des Packages ou fichiers sont endommagés, :
- Windows peut devenir instable avec des plantages / freezes d'applications
- Windows peut avoir des difficultés à effectuer les mises à jour (Erreurs Windows Update, etc)
Il s'agit du "Magasin des composants" qui prend en charge les fonctions nécessaires à la Personnalisation et aux "Mises à jour" Windows, comme :
- Utilisation de Windows Update pour installer de nouvelles versions de composants. Cela permet de garantir la mise à jour et la sécurité des systèmes.
- Activation ou désactivation de fonctionnalités Windows.
- Ajout de rôles ou de fonctionnalités à l’aide du Gestionnaire de serveur.
- Déplacement de systèmes entre différentes éditions de Windows.
- Récupération système suite à une défaillance ou à un échec du démarrage
- Désinstallation de mises à jour problématiques
- Exécution de programmes à l’aide d’assemblys côte à côte (C:\Windows\assembly)
Le dossier WinSxS est relativement volumineux, des utilisateurs peuvent être tentés de supprimer des fichiers ou dossiers, ce qui est bien sûr une très mauvaise idée. Le dossier contenant de multitudes de fichiers et sous-dossiers, on a parfois l'impression que des fichiers sont en doubles alors qu'il s'agit seulement de liens symboliques. WinSxS effectue aussi beaucoup de sauvegardes pour revenir en arrière en cas de conflits ou fichiers corrompus. Par conséquent, éliminer ces sauvegardes est une mauvaise initiative.
La gestion des Packages se fait à l'aide de l'utilitaire DISM, en natif depuis Windows 8. Ce dernier est accessible depuis l'invite de commandes en Administrateur. Il permet d'installer, d'obtenir des infos ou supprimer des Packages. Les paquets sont au format Microsoft Cabinet (.CAB) ou au format Windows Update Stand-alone Installer (.MSU).

La commande Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore va retourner des informations sur le "Magasin des composants", on constate notamment que la sauvegarde des paquets occupe un poids total d'environ 2Go.

La MSDN de Microsoft explique les détails des notations.
La commande Dism.exe /Online /Get-Packages va lister les paquets installés.

On les retrouve sous forme de dossiers dans WinSxS :

La commande Dism.exe /Online /Get-PackageInfo /PackageName:Microsoft-Windows-Prerelease-Client-Package~31bf3856ad364e35~amd64~~10.0.10240.16384
Dism /Image:C:\test\offline /Get-PackageInfo /PackagePath:C:\packages\package.cab
Dism /Image:C:\test\offline /Get-PackageInfo /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0 permet d'obtenir les informations sur un paquet en particulier.

La commande Dism.exe /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0
Dism /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0 /PackageName:Microsoft-Windows-MediaPlayer-Package~31bf3856ad364e35~x86~~6.1.6801.0
Dism /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackagePath:C:\packages\package1.cab /PackagePath:C:\packages\package2.cab permet d'installer un paquet.
La commande Dism.exe /online /remove-package /packagename:Package_for_KB2919355~31bf3856ad364e35~amd64~~6.3.1.14 permet de supprimer en indiquant le nom d'un paquet ( packagename )
La MSDN de Microsoft explique les détails des paramètres disponibles pour DISM
Nettoyer WinSxS
Depuis Windows 8 & Windows 8.1, des fonctionnalités de nettoyage ont été ajoutées sur DISM. Malheureusement, ces fonctionnalités ne sont pas disponibles sur Windows Vista et Windows Seven.
La fonctionnalité StartComponentCleanup permet à DISM de nettoyer WinSxS.
On notera qu'une tâche planifiée "\Microsoft\Windows\Servicing\StartComponentCleanup" a aussi été ajoutée. Elle a pour but de supprimer les composants qui n'ont pas été utilisés depuis 30 jours.
Ci-dessous, la tâche planifiée StartComponentCleanup

Lorsque l'on exécute celle-ci, TiWorker.exe ( Windows Modules Installer Worker ) se lance.
Suivant les opérations, la tâche peut prendre plusieurs longues minutes...

La commande Dism.exe /online /Cleanup-Image /StartComponentCleanup permet de lancer le nettoyage.
NOTE : Ne reprenez pas de mauvaises habitudes, ne lancez pas cette commande tous les jours car ça ne sert strictement à rien.
La commande: Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase contient le paramètre /ResetBase qui permet de supprimer les sauvegardes WinSxS. Je vous déconseille fortement de l'utiliser car si un fichier ou une mise à jour rencontre des problèmes, vous risquez de ne plus pouvoir revenir en arrière. Enfin, la commande Dism.exe /online /Cleanup-Image /SPSuperseded contient le paramètre /SPSuperseded qui permet de réduire la quantité d’espace disque utilisée par les mises à jour cumulatives (Service Pack)
L'utilitaire cleanmgr permet aussi de le faire, lire la page : Comment libérer de l’espace disque avec cleanmgr.

WinSxS : Réparer les fichiers systèmes corrompus etc
Comme évoqué en introduction, si des fichiers systèmes / Packages sont corrompus, cela peut occasionner des problèmes de fonctionnement sur des applications et sur Windows. L'outil SFC permet d'effectuer une analyse des fichiers systèmes. Dans certains cas il pourra restaurer des fichiers systèmes du magasin des composants (WinSxS) mais en règle générale, il n'y parviendra pas. L'outil DISM permet aussi de corriger ce type d'incohérences sur le magasin des composants et de restaurer des fichiers systèmes.
La commande Dism.exe /Online /Cleanup-image /Restorehealth contient le paramètre /Restorehealth qui permet de réparer le magasin des composants. Pour rappel, ce paramètre n'est disponible qu'à partir de Windows 8 !
Les rapports se sont situés dans :
%SYSTEMROOT%\Logs\CBS\CheckSUR.log
%SYSTEMROOT%\Logs\CBS\CheckSUR.persist.log
La commande précédente va scanner les fichiers systèmes et restaurer à partir de fichiers en ligne. Une connexion à Internet doit donc être établie pour que ça fonctionne, notamment avec certains composants utilisés par Windows Update. Si ce n'est pas le cas, vous pouvez restaurer les Packages à partir du DVD de Windows en ajoutant le paramètre /Source. Exemple avec la commande Dism.exe /Online /Cleanup-Image /RestoreHealth /Source:H:\sources\sxs /LimitAccess où H:\sources pointe sur un dossier du DVD.
Lorsque DISM n'est pas capable de réparer des fichiers systèmes, utiliser le programme SFCFix. Sur le forum, nous avons eu un cas récemment avec une mise à jour de Windows qui a corrompu certains fichiers systèmes, ce qui occasionné d'importants ralentissements. Voir le sujet : KB3022345 : corruptions de fichiers systèmes
Conclusion
Le magasin des composants de Windows est donc un composant essentiel de Windows, qui lorsqu'il est endommagé, peut cause de grave dysfonctionnements. On regrettera que l'outil DISM ne soit pas pleinement fonctionnel pour les versions antérieures à Windows 8.
liens internes :
Première règle élémentaire de sécurité : on réfléchit puis on clic et pas l'inverse - Les fichiers/programmes c'est comme les bonbons, quand ça vient d'un inconnu, on n'accepte pas
Sécuriser son ordinateur (version courte)
Tutoriels Logiciels - Tutoriel Windows - Windows 10
Stop publicités - popups intempestives
supprimer-trojan.com : guide de suppression de malwares
Partagez malekal.com : n'hésitez pas à partager sur Facebook et GooglePlus les articles qui vous plaisent.
Sécuriser son ordinateur (version courte)
Tutoriels Logiciels - Tutoriel Windows - Windows 10
Stop publicités - popups intempestives
supprimer-trojan.com : guide de suppression de malwares
Partagez malekal.com : n'hésitez pas à partager sur Facebook et GooglePlus les articles qui vous plaisent.