Event ID 41 Kernel-Power: Сервер неожиданно перезагрузился (Unexpected Shutdown)
Архитектура сбоя и симптомы (Task 63)
Событие 41 (Kernel-Power) — это самый критический лог в журнале System. Сообщение: "Система перезагрузилась, завершив работу с ошибками (The system has rebooted without cleanly shutting down first)". Оно логируется при загрузке ОС, когда ядро Windows проверяет флаг чистого выключения (Dirty Shutdown Flag). Если сервер упал в Синий экран (BSOD), завис аппаратно, потерял питание или был жестко выключен кнопкой Reset, диспетчер питания сгенерирует это событие.
Таблица параметров события 41 (BugcheckCode)
Ключ к разгадке находится на вкладке Подробности (Details) события 41:
| Параметр | Значение | Расшифровка для инженера |
|---|---|---|
| BugcheckCode | 0 (Ноль) | Аппаратный сбой. Сервер потерял электричество (сбой БП/ИБП), завис намертво (Hardware Freeze) или был зажат Reset. Ядро ОС не успело ничего записать. |
| BugcheckCode | >0 (Например, 159) | Программный сбой (BSOD). Сервер упал в Синий экран. Код 159 в HEX — это 0x9F. Ищите дамп памяти. |
| PowerButtonTimestamp | >0 | Кто-то физически подошел к серверу и нажал кнопку включения (или выключил его через iLO/IPMI). |
Пошаговое дерево решений (Аппаратная диагностика)
Сценарий 1: Программный сбой (BugcheckCode больше нуля)
Если код больше нуля, проблема в драйверах.
- Конвертируйте десятичное значение BugcheckCode в шестнадцатеричное (HEX) с помощью калькулятора. Например, 239 =
0xEF(CRITICAL_PROCESS_DIED). - Перейдите в папку
C:\Windows\и найдите файлMEMORY.DMP. - Используйте утилиту WinDbg для расшифровки дампа и поиска сбойного драйвера.
Сценарий 2: Аппаратный сбой (BugcheckCode равен 0)
ОС "ослепла" и умерла мгновенно. Логи Windows здесь бессильны.
- Анализ питания (PSU): Проверьте логи ИБП (UPS) на предмет перепадов напряжения (Brownouts). Убедитесь, что блоки питания сервера (Power Supplies) резервированы и не выдают ошибок.
- Тестирование RAM: Битый модуль памяти может намертво "заморозить" шину процессора. Запустите Memtest86+ на 24 часа.
- Перегрев (Thermal Trip): Процессор достиг критической температуры (T-Junction) и отключился аппаратно. Проверьте радиаторы и кулеры.
Сценарий 3: Сбой на виртуальной машине (Hyper-V / VMware)
Если событие 41 с кодом 0 возникает внутри виртуальной машины:
- Физический хост перезагрузился (или упал в BSOD), жестко "убив" все ВМ.
- СХД (SAN) отвалилась дольше, чем на 60 секунд. Процесс гостевой ОС
vmwp.exeзавис и был принудительно убит кластером (Cluster IsAlive failure).
Типовые ошибки администраторов
- Ориентация только на событие 41: 41 — это следствие, а не причина. Всегда ищите событие 1001 (BugCheck) или события 6008 (Неожиданное завершение работы) перед 41.
- Быстрый запуск (Fast Startup): В редких случаях (на десктопах или серверах с гибернацией) ядро падает при попытке выйти из сна (S4), генерируя ложное 41. Выполните
powercfg /h off.
Внезапные отключения (Dirty Shutdown) 100% приведут к разрушению файловых таблиц (NTFS Corruption) и потере баз данных. Возьмем вашу физическую инфраструктуру на обслуживание: проведем аппаратную диагностику (IPMI/iDRAC), заменим блоки питания, разберем дампы и гарантируем стабильность (SLA 99.9%).
Частые вопросы (FAQ)
Почему после BSOD нет файла дампа (MEMORY.DMP)?
Если на диске C: (где лежит файл подкачки pagefile.sys) не было свободного места, равного объему оперативной памяти (или 256 МБ для минидампа), ядро не сможет сохранить дамп при падении. BugcheckCode будет больше 0, но дампа вы не найдете.
Генерируется ли 41, если нажать 'Перезагрузка' в меню Пуск?
Нет. При штатной перезагрузке генерируются события 1074 и 6006. Событие 41 появляется только при отсутствии флага 'Clean Shutdown'.