Votre serveur Dell sous Windows Server 2022 Standard se fige aléatoirement (écran noir, plus aucune interaction) ? Voici une méthode pas‑à‑pas, concrète et reproductible, pour identifier la cause et corriger la panne sans réinstaller l’OS.
Vue d’ensemble du problème
Les gels « écran noir » sur Windows Server 2022 peuvent découler d’un empilement de facteurs : pilote défectueux, firmware obsolète, micro‑coupures I/O sur le stockage, conflit d’un agent de sécurité, throttling thermique, bug GPU (RDS/GUI), voire corruption système. Sur matériel Dell récent, les diagnostics ePSA/iDRAC/RAID peuvent être « OK » tout en masquant une condition logicielle ou un timeout matériel de niveau OS. L’objectif est de prouver la cause avec des traces et d’appliquer un correctif ciblé, sans réinstallation.
Plan d’attaque en 4 phases
- Mettre à niveau (Windows + firmware/pilotes Dell) pour éliminer les bugs connus.
 - Observer et capturer (journaux, WPR, dump mémoire) afin d’isoler le composant fautif.
 - Isoler (Clean Boot, Mode sans échec, tests ciblés) pour confirmer l’hypothèse.
 - Corriger (pilote, réglage BIOS/OS, politique EDR/backup, stockage, alimentation).
 
Résumé opérationnel (tableau des actions)
| Domaine | Actions proposées | But / résultat attendu | 
|---|---|---|
| Mises à jour système & microprogramme | Windows Update : installez les derniers correctifs cumulés et pilotes publiés pour Server 2022. Dell : appliquez BIOS, firmware PERC/RAID, iDRAC, pilotes Chipset/NIC via SupportAssist ou Repository Manager.  | Éliminer les bugs déjà corrigés et les incompatibilités firmware↔pilotes. | 
| Analyse des journaux | Observateur d’événements → « Système » / « Application ». Repérez : erreurs critiques Kernel‑Power, avertissements Display ou StorPort, ID 41, 6008, 1001. Exporte z un filtre couvrant les 24 h avant chaque gel. | Identifier le composant (pilote, service, I/O) déclenchant le blocage. | 
| Diagnostic mémoire & CPU | Exécutez mdsched.exe (test étendu), puis tests CPU/mémoire via ePSA/SupportAssist OS Recovery. | Détecter barrettes défectueuses et erreurs ECC/WHEA. | 
| Démarrage sélectif (Clean Boot) | msconfig → désactivez tous les services tiers et programmes au démarrage, redémarrez. | Si le gel disparaît, réactivez un à un pour trouver l’élément fautif. | 
| Mode sans échec & pilotes | Démarrer en Safe Mode / Safe Mode + Networking. Si stable, suspecter driver graphique (ASPEED/iGPU), antivirus/EDR, pilotes de sauvegarde/virtualisation. | Isoler un pilote ou service chargé uniquement en mode normal. | 
| Débogage arrêt/hang | Activez l’écriture du dump mémoire (kernel/complete). Lors d’un gel : déclenchez un NMI via iDRAC ou Ctrl+Scroll Lock deux fois. Analysez avec WinDbg (!analyze -v). | Relever la pile bloquée (thread, pilote, IRQ) pour remonter à la cause racine. | 
| Alimentation & thermique | Vérifiez journaux UPS et températures iDRAC. Testez temporairement des profils BIOS moins agressifs pour P‑state/C‑state. | Écarter coupure transitoire ou throttling thermique. | 
| Stockage & RAID | Mettez à jour pilote PERC/HBA, exécutez un Consistency Check. Sur SSD/NVMe, vérifiez SMART via OMSA/smartctl. | Éviter les timeouts I/O bloquants (Storport). | 
| Utilitaires additionnels | Windows Performance Recorder (captures circulaires), Windows Performance Analyzer, Reliability Monitor (perfmon /rel). | Capturer la trace juste avant/pendant le gel. | 
Mises à jour Dell & Windows : à faire avant toute chose
Objectif : supprimer d’emblée 60–80 % des causes liées à un bug connu. Les gels s’améliorent souvent après mise à jour croisée BIOS ↔ microcode CPU ↔ PERC ↔ pilotes.
- Windows Update (inclure pilotes proposés pour 2022) puis redémarrage contrôlé hors production.
 - Dell Lifecycle Controller (F10) ou SupportAssist pour BIOS/iDRAC/PERC/Chipset/NIC.
 - OpenManage/OMSA : validez l’état des capteurs (températures, alimentation, intrusions châssis).
 - Repository Manager : créez un bundle exact au modèle et à la révision de carte mère.
 
Conseils de terrain
- Planifiez les mises à jour par lot cohérent (BIOS+iDRAC+PERC) plutôt qu’au fil de l’eau.
 - Après flash BIOS, remettez les profils « Performance » et revérifiez l’ordre de boot.
 
Observer : journaux et corrélations
Filtrer rapidement les événements clés
# Système : derniers événements critiques/erreurs pertinents
Get-WinEvent -FilterHashtable @{
  LogName='System';
  Id=@(41,6008,1001);
  StartTime=(Get-Date).AddDays(-7)
} | Select TimeCreated, Id, LevelDisplayName, ProviderName, Message | Format-List
# Avertissements Storport/volumes
Get-WinEvent -FilterHashtable @{
LogName='System';
ProviderName='storport';
StartTime=(Get-Date).AddDays(-7)
} | Select TimeCreated, Id, Message | Format-Table -Wrap
# WHEA (erreurs matérielles CPU/RAM/PCIe)
Get-WinEvent -FilterHashtable @{
LogName='System';
ProviderName='Microsoft-Windows-WHEA-Logger';
StartTime=(Get-Date).AddDays(-14)
} | Select TimeCreated, Id, Message | Format-List 
Exporter un instantané autour d’un gel
Notez l’heure de reprise manuelle (après hard reset), puis exportez une fenêtre T‑24 h / T :
$t = Get-Date "2025-09-17T15:42:00"  # <-- remplacez par l'heure du gel
Get-WinEvent -FilterHashtable @{LogName='System'; StartTime=$t.AddHours(-24); EndTime=$t} |
  Export-Csv C:\Temp\System_before_hang.csv -NoTypeInformation
Get-WinEvent -FilterHashtable @{LogName='Application'; StartTime=$t.AddHours(-24); EndTime=$t} |
  Export-Csv C:\Temp\Application_before_hang.csv -NoTypeInformation
Capturer la preuve pendant le gel
Quand l’écran est noir et la session figée, l’OS peut encore répondre en mode noyau. L’objectif est de déclencher un dump pour figer l’état des threads et des pilotes.
Configurer l’écriture du dump
- Assurez‑vous que le fichier d’échange (pagefile) est présent sur C: (taille système).
 - Activez le dump noyau (ou complet si espace disque suffisant).
 
# Activer le dump noyau et la génération sur Ctrl+ScrollLock
New-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\CrashControl' -Name CrashDumpEnabled -PropertyType DWord -Value 2 -Force | Out-Null
New-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Services\kbdhid\Parameters' -Name CrashOnCtrlScroll -PropertyType DWord -Value 1 -Force | Out-Null
New-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters' -Name CrashOnCtrlScroll -PropertyType DWord -Value 1 -Force | Out-Null
Remarque : sur serveur headless/à distance, utilisez iDRAC pour envoyer un NMI (« Generate NMI to system ») au moment du gel.
Déclencher et analyser
- Quand le gel survient, pressez Ctrl+Scroll Lock deux fois (ou NMI iDRAC). Le serveur déclenche un écran bleu contrôlé et écrit 
%SystemRoot%\MEMORY.DMP. - Ouvrez le dump avec WinDbg :
 
!analyze -v
!thread
!locks
!irpfind
lmvm <pilote_suspect>
!stacks 2
Cherchez des signes de blocage I/O (Storport), d’interruptions hautes (ISR/DPC), ou de threads en attente réseau/EDR. Un call‑stack pointant vers un pilote NIC/RAID/EDR oriente la remédiation (mise à jour, rollback, réglage).
Démarrage sélectif et Mode sans échec
Clean Boot
msconfig→ onglet Services → cochez « Masquer tous les services Microsoft », puis « Désactiver tout ».- Onglet Démarrage → Ouvrir le Gestionnaire des tâches → désactivez tous les éléments.
 - Redémarrez et observez pendant 48–72 h. Si plus de gel : réactivez éléments par lots (sécurité, backup, monitoring) jusqu’à reproduction, pour isoler le fautif.
 
Mode sans échec (+ réseau)
Si Safe Mode est stable, ciblez en priorité : pilote graphique (ASPEED/iGPU), agent antivirus/EDR, pilote de sauvegarde (VSS/VDS), filtre de virtualisation. Les composants graphiques sont souvent impliqués avec des rôles RDS/GUI.
Stockage, RAID et timeouts I/O
Des « micro‑pauses » du contrôleur (PERC/HBA/NVMe) peuvent bloquer le noyau le temps d’un timeout. Indices : avertissements Storport, latences disque élevées, events « Reset to device, \Device\RaidPort0, was issued ».
- Mettre à jour pilote PERC/HBA et le firmware des SSD/NVMe.
 - Lancer un Consistency Check sur les volumes RAID, vérifier l’intégrité et la reconstruction.
 - Sur SSD, lire SMART (OMSA/smartctl) : reallocated, media errors, wear‑leveling.
 - Vérifier la couche câblage/backplane (erreurs PHY/Link retrain).
 
Paramètres avancés (à n’utiliser qu’avec prudence)
En environnement SAN ou stockage lent à réagir, certains ajustent la valeur de timeout disque côté OS. Ne changez rien sans consigne OEM. Si validé, la clé suivante (serveur redémarré ensuite) existe :
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Disk\TimeOutValue (DWORD, secondes)
Consignez toute modification (valeur initiale, valeur modifiée, date) dans votre journal de changements.
Alimentation, thermique et performance
- iDRAC : contrôlez températures CPU/VRM/SSD, états ventilateurs, erreurs d’alimentation.
 - UPS : vérifiez les journaux d’événements (basculements, chutes de tension).
 - BIOS : testez le profil « Maximum Performance », désactivez temporairement C‑States profonds (C6/C7) et P‑States agressifs. Objectif : exclure une transition de puissance instable.
 - OS : profil d’alimentation « Performances élevées ».
 
Réseau et agents
Les cartes 10/25/40 Gb (Broadcom/Mellanox) requièrent un alignement pilote/firmware. Symptômes classiques : pics de DPC/ISR, latences élevées, gel sous charge réseau.
- Mettez à jour pilote + firmware OEM (pas le pilote générique).
 - Sur hôtes Hyper‑V, validez RSS/VMQ/VMMQ selon les recommandations du modèle NIC.
 - EDR/AV : créez des exclusions pour dossiers système, VSS, chemins de sauvegarde, et testez sans protection temps réel sur une fenêtre contrôlée.
 
Traces de performance : WPR/WPA en boucle circulaire
Installez le Windows Performance Toolkit. L’idée : capturer en permanence les 120 dernières secondes pour que la trace couvre le moment du gel.
# Trace circulaire 120 s (general + disque + réseau)
wpr -start GeneralProfile -filemode
wpr -addboot GeneralProfile
# Quand le serveur repart après gel :
wpr -stop C:\Temp\hang_trace.etl
Dans WPA, examinez CPU Usage (Sampled), Disk Usage, Networking, GPU et Generic Events. Un thread à 100 % en noyau ou des DPC/ISR anormaux révèlent souvent le pilote incriminé.
Réglages graphiques (RDS/GUI)
Avec rôles RDS ou applications WPF/DirectX, désactivez temporairement l’accélération matérielle pour valider l’hypothèse graphique.
[HKCU\Software\Microsoft\Avalon.Graphics]
"DisableHWAcceleration"=dword:00000001
Sur serveur multi‑session, testez un pilote ASPEED/iGPU alternatif (fourni par l’OEM) ou revenez au pilote boîte‑à‑lettres de Microsoft pour isoler.
Vérifications d’intégrité de l’OS (avant « dernier recours »)
sfc /scannow
DISM /Online /Cleanup-Image /RestoreHealth
Ces commandes réparent des fichiers système corrompus pouvant induire des gels répétitifs.
Script de collecte (prêt à l’emploi)
Ce script PowerShell rassemble les informations clés pour une analyse à froid (journaux filtrés, services tiers, versions de pilotes de stockage/réseau, état d’alimentation/thermique quand OMSA est présent).
$out = 'C:\Temp\Srv2022_HangCollect'
New-Item -ItemType Directory -Path $out -ErrorAction SilentlyContinue | Out-Null
# 1) Journaux pivots
Get-WinEvent -FilterHashtable @{LogName='System'; StartTime=(Get-Date).AddDays(-7)} |
Export-Csv "$out\System_7d.csv" -NoTypeInformation
Get-WinEvent -FilterHashtable @{LogName='Application'; StartTime=(Get-Date).AddDays(-7)} |
Export-Csv "$out\Application_7d.csv" -NoTypeInformation
# 2) Services non-Microsoft
Get-Service | Where-Object {$_.Name -notmatch '^(AJRouter|.*ms|.*Microsoft)'} |
Select Name, Status, DisplayName, StartType | Export-Csv "$out\Services_tiers.csv" -NoTypeInformation
# 3) Pilotes stockage / réseau chargés
Get-WmiObject Win32_PnPSignedDriver | Where-Object {
$_.DeviceClass -in @('SCSIAdapter','HDC','System','Net')
} | Select DeviceName, DriverVersion, DriverProviderName, DriverDate, InfName |
Export-Csv "$out\Drivers_Storage_Net.csv" -NoTypeInformation
# 4) Résumé matériel
Get-ComputerInfo | Out-File "$out\ComputerInfo.txt"
Get-PhysicalDisk | Select FriendlyName, MediaType, HealthStatus, OperationalStatus, Size |
Format-Table -AutoSize | Out-String | Out-File "$out\PhysicalDisk.txt"
# 5) Processus gourmands (échantillon)
Get-Process | Sort CPU -Desc | Select -First 30 Name, Id, CPU, WS |
Export-Csv "$out\TopCPU.csv" -NoTypeInformation 
Arbre de décision (diagnostic rapide)
- Gel seulement sous charge disque → vérifiez PERC/HBA, firmware SSD, events Storport, latences > 100 ms → mettez à jour/ajustez.
 - Gel lors d’accès à distance/RDS → privilégiez la piste GPU (ASPEED/iGPU), désactivez l’accélération WPF, changez le pilote.
 - Gel aléatoire + WHEA 18/19 → suspectez CPU/RAM/PCIe → test mémoire étendu, vérification thermiques/VRM.
 - Gel cessant en Clean Boot → fautif logiciel (EDR, backup, monitoring). Réactivez par demi‑lots pour isoler.
 - BSOD provoqué par NMI avec stack pointant vers ndis/bcm/mxm/perc → pilote NIC/RAID concerné.
 
Cas réels fréquents & correctifs
| Symptôme | Cause probable | Action corrective | 
|---|---|---|
| Écran noir sur sessions RDS, CPU faible | Accélération GPU (ASPEED/iGPU) instable | Désactiver l’accélération WPF, changer/mettre à jour le pilote vidéo OEM | 
| Gel pendant sauvegarde | Filtre VSS/driver backup en conflit | Exclusions AV/EDR, mise à jour/rollback agent de backup, valider VSS writers | 
| Timeouts disque, event Storport | Firmware SSD/PERC ou câblage backplane | MAJ firmware/pilote, consistency check, inspection backplane | 
| DPC/ISR élevés, latence réseau | Pilote/firmware NIC 10/25/40 Gb | MAJ OEM, ajuster RSS/VMQ, profil performance | 
| WHEA Logger 18/19 récurrents | Instabilité CPU/RAM/PCIe | Test mémoire étendu, vérifier thermiques et BIOS, éventuel remplacement | 
Vérifications finales (avant clôture)
- Correctifs Windows/firmwares Dell appliqués ? Versions consignées.
 - Journaux propres (pas d’erreur critique) sur 7–14 jours.
 - Aucun nouvel event Storport/WHEA sous charge.
 - WPR/WPA sans anomalies (DPC/ISR/CPU noyau normaux).
 - Plan de reprise documenté (NMI/dump, scripts de collecte).
 
Informations complémentaires utiles
- Plan de secours : activez « Automatic Restart on System Failure » pour éviter un blocage prolongé en prod, mais conservez le dump pour analyse.
 - Désactivation temporaire des accélérations graphiques pour RDS/GUI : clé 
DisableHWAccelerationci‑dessus. - Firmware NIC (Mellanox/Broadcom) : installez les versions OEM correspondant au modèle exact.
 - Profil d’alimentation : « Performances élevées » côté Windows et « Maximum Performance » en BIOS pour neutraliser les C‑States profonds durant le diagnostic.
 - Dernier recours avant réinstallation : 
sfc /scannowpuisDISM /Online /Cleanup-Image /RestoreHealth. 
Procédure d’escalade (si nécessaire)
- Générez un TSR iDRAC (Tech Support Report) et un SupportAssist Collection complet.
 - Fournissez 
MEMORY.DMP/minidump+hang_trace.etl+ exports journaux (System/Application). - Indiquez dates/heures précises des gels, charge de travail en cours et toute modification récente (MAJ, ajout d’agent, etc.).
 
Conclusion
En appliquant méthodiquement ce parcours — mises à jour Windows/Dell, observation fine (Event Viewer, WPR/WPA), capture de dump via NMI, isolation par Clean Boot / Safe Mode — la majorité des blocages « écran noir » sur Windows Server 2022 Standard se résolvent sans réinstallation. La clé est de transformer un incident opaque en une preuve technique actionnable : un pilote, un firmware, ou un réglage identifié et corrigé.
Annexe A — Commandes utiles
# Moniteur de fiabilité
perfmon /rel
# Test mémoire
mdsched.exe
# Export direct via wevtutil (System)
wevtutil epl System C:\Temp\System.evtx /ow:true
# Liste des profils WPR disponibles
wpr -profiles 
Annexe B — Checklist terrain (imprimable)
- [ ] Windows Update à jour (y compris pilotes proposés).
 - [ ] BIOS/iDRAC/PERC mis à niveau depuis pack Dell validé.
 - [ ] Profil d’alimentation « Performances élevées » (OS) et « Maximum Performance » (BIOS).
 - [ ] Clean Boot appliqué et plan de réactivation par lots défini.
 - [ ] Safe Mode testé (comportement comparé).
 - [ ] Crash dump configuré ; procédure NMI prête (iDRAC).
 - [ ] WPR circulaire activé (120 s), WPA installé.
 - [ ] OMSA/SMART vérifiés ; Consistency Check RAID lancé.
 - [ ] EDR/backup : exclusions validées, version contrôlée.
 - [ ] Journaux Event Viewer exportés (System/Application).
 - [ ] Documentation des versions/changes tenue à jour.
 
En utilisant cette méthode, vous sécurisez l’environnement, vous gagnez du temps au prochain incident, et vous bâtissez un dossier probant pour l’éditeur/le constructeur au besoin.

