Aller au contenuAller à l'arborescence
FichierRisque : Ne pas toucher

SYSTEM C:\Windows\System32\config\SYSTEM

Ruche du Registre HKLM\SYSTEM : jeux de contrôle, services, pilotes et configuration matérielle nécessaires au démarrage.

Mis à jour le Par AltF4 Formation

À quoi ça sert

SYSTEM est la ruche du Registre que Windows charge en premier au démarrage, sous HKEY_LOCAL_MACHINE\SYSTEM. Le chargeur (winload) y lit la liste des pilotes de démarrage avant même que le noyau tourne. Les règles communes à toutes les ruches (verrouillage, reg save, ne jamais toucher au fichier) sont sur la fiche du dossier config ; celle-ci ne garde que ce qui distingue SYSTEM.

Ce qu’il contient

  • Les jeux de contrôle ControlSet001, ControlSet002, etc. CurrentControlSet n’est qu’un lien vers celui qui est actif ; la clé Select dit lequel (Current, Default, Failed, LastKnownGood).
  • Services : une clé par service et par pilote, avec ImagePath et Start (0 pour un pilote de démarrage, 2 pour un démarrage automatique, 3 manuel, 4 désactivé).
  • Le matériel détecté, l’ordre de chargement et la configuration de démarrage.
  • À côté, les fichiers de transactions SYSTEM.LOG1 et SYSTEM.LOG2.

Risques et bonnes pratiques

  • Un SYSTEM absent ou corrompu bloque le démarrage avec « Windows n’a pas pu démarrer car le fichier suivant est manquant ou endommagé : \WINDOWS\SYSTEM32\CONFIG\SYSTEM ». Réparez depuis WinRE ou restaurez une sauvegarde de l’état du système.
  • Depuis WinRE, vous pouvez aussi monter la ruche hors ligne pour corriger un pilote qui empêche de démarrer : reg load HKLM\OFFSYSTEM D:\Windows\System32\config\SYSTEM, modifiez la valeur Start du service fautif sous ControlSet001\Services, puis reg unload HKLM\OFFSYSTEM. Sans le reg unload, la ruche reste verrouillée.
  • Avec la ruche SAM, une copie hors ligne de SYSTEM fournit la clé de démarrage qui déchiffre les empreintes de mots de passe locaux : protégez-la comme une sauvegarde de comptes.

Commandes utiles

Fenêtre de terminal
# Jeu de contrôle actif au démarrage (Current, Default, Failed, LastKnownGood)
Get-ItemProperty 'HKLM:\SYSTEM\Select'
# Pilotes de démarrage (Start = 0) et leur fichier
Get-ChildItem HKLM:\SYSTEM\CurrentControlSet\Services | Get-ItemProperty |
Where-Object Start -eq 0 | Select-Object PSChildName, ImagePath
# Copie hors ligne de la ruche (en administrateur)
reg save HKLM\SYSTEM "$env:TEMP\system.hiv"

Signaler une erreur