Kernel panic: Machine Check Exception (MCE) — Аппаратная диагностика Linux
Архитектура ошибки и симптомы сбоя
Сбой «Kernel panic - not syncing: Machine Check Exception (MCE) detected» — это прямое прерывание от аппаратной подсистемы процессора (x86 Machine Check Architecture). Процессор информирует ядро ОС о возникновении критического неустранимого аппаратного сбоя: аппаратная ошибка четности кэш-памяти CPU (L1/L2/L3), сбой контроллера памяти (ECC uncorrectable error), перегрев кристалла или сбой шины межпроцессорного взаимодействия (QPI/UPI).
Диагностическая таблица параметров сбоя
| Параметр | Значение | Инженерный смысл сбоя |
|---|---|---|
| MCG_STATUS / MCi_STATUS | MSR Register | Регистры процессора, фиксирующие конкретный тип сбоя и номер банка памяти. |
| Severity | Fatal / Uncorrected | Некорректируемая ошибка оборудования, требующая немедленной остановки системы. |
| Subsystem | CPU / RAM / VRM | Аппаратная деградация чипа, модулей DIMM или системы питания материнской платы. |
Пошаговое дерево решений и сценарии траблшутинга
Сценарий 1: Расшифровка MCE с помощью rasdaemon или mcelog
# Установка утилит анализа аппаратных логов:
# Для Ubuntu/Debian:
sudo apt-get install rasdaemon
# Для RHEL/CentOS:
sudo dnf install rasdaemon
# Просмотр зарегистрированных ошибок контроллера памяти:
sudo ras-mc-ctl --summary
sudo ras-mc-ctl --errorsСценарий 2: Локализация дефектного модуля оперативной памяти (DIMM)
- Проверьте вывод
edac-util -vдля выявления конкретного слота памяти (Channel/Slot). - Проверьте системный журнал BMC/iLO/iDRAC: найдите события «Uncorrectable Memory Error at DIMM_xx».
- Извлеките дефектную планку ОЗУ и проведите стресс-тест оставшихся модулей.
Сценарий 3: Проверка температурного режима и системы питания
# Мониторинг температур датчиков процессора:
sudo apt-get install lm-sensors
sudo sensorsITSTM выполнит экспресс-диагностику серверного оборудования, замену компонентов и перенос виртуальных машин на резервные мощности без потери транзакций.
Частые вопросы (FAQ)
Всегда ли ошибка MCE означает замену процессора или памяти?
В 85% случаев MCE вызвана деградацией модулей памяти (RAM DIMM) или перегревом процессора из-за высохшей термопасты/отказа вентиляторов. Сам процессор выходит из строя значительно реже.
Что делать, если rasdaemon не собирает логи?
Убедитесь, что служба rasdaemon запущена (systemctl status rasdaemon) и в ядре включены модули EDAC (Error Detection and Correction) для вашего чипсета.