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.
À 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.CurrentControlSetn’est qu’un lien vers celui qui est actif ; la cléSelectdit lequel (Current,Default,Failed,LastKnownGood). Services: une clé par service et par pilote, avecImagePathetStart(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.LOG1etSYSTEM.LOG2.
Risques et bonnes pratiques
- Un
SYSTEMabsent 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 valeurStartdu service fautif sousControlSet001\Services, puisreg unload HKLM\OFFSYSTEM. Sans lereg unload, la ruche reste verrouillée. - Avec la ruche
SAM, une copie hors ligne deSYSTEMfournit 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
# 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 fichierGet-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"