Синий экран смерти (BSOD) используется Microsoft Windows, при появлении критической системной ошибки. Linux / UNIX-подобная операционная система выводит сообщение kernel panic. Это аналог BSOD. BSoD и kernel panic формируется с помощью Machine Check Exception (MCE). MCE не что иное, как фича 64-битных систем AMD / Intel, которая используется для обнаружения неустранимой проблемы с оборудованием. MCE может обнаружить:n
- Ошибка связи между процессором и материнской платой.
- Ошибка памяти — ECC проблемы.
- Ошибки кэша процессора и так далее.
Программа mcelog декодирует машинные события (аппаратных ошибок) на x86-64, работающих под управлением 64-разрядной Linux. Эту программу рекомендовано запускать регулярно по расписанию cron на 86-64 Linux системах. Это полезно для прогнозирования аппаратного сбоя сервера до фактического краха сервера.n
Установите mcelog
Введите следующую команду под RHEL / CentOS / Fedora Linux, 64 битного ядра:n
yum install mcelog
Введите следующую команду под Debian / Ubuntu Linux, 64 битного ядра:n
apt-get update && apt-get install mcelog
По умолчанию Cronjob
mcelog должны регулярно выполнятся с помощью cron на любой x86-64 системы Linux. По умолчанию следующие настройки cron используются на Debian / Ubuntu Linux —/etc/cron.d/mcelog:n
# /etc/cron.d/mcelog: crontab entry for the mcelog packagenSHELL=/bin/shnPATH=/sbin:/bin:/usr/sbin:/usr/binnn*/5 * * * * root test -x /usr/sbin/mcelog -a ! -e /etc/mcelog-disabled && /usr/sbin/mcelog --ignorenodev --filter >> /var/log/mcelog
CentOS / RHEL / Fedora Linux, добавить в ежечасный cron через /etc/cron.hourly/mcelog.cron:n
#!/bin/bashn/usr/sbin/mcelog --ignorenodev --filter >> /var/log/mcelog
Как просмотреть журналы ошибок?
Используйте tail или grep команду:n
# tail -f /var/log/mcelog
илиn
# grep -i "hardware error" /var/log/mcelog
илиn
# grep -c "hardware error" /var/log/mcelog
Кроме того, вы можете отправить по электронной почте уведомление, когда буде обнаружена аппаратная ошибка в системе (написать скрипт и вызвать его через cron):n
# [ $(grep -c "hardware error" /var/log/mcelog) -gt 0 ] && echo "Hardware Error Found $(hostname) @ $(date)" | mail -s 'H/w Error' [email protected]
С помощью этого инструмента, я увидел пару аппаратные проблемы и смог предотвратить kernel panic т.е. сбой сервера.nЕсли у вас есть проблемы с сервером или вы хотите не допустить их мы предоставляем услуги администрирования серверов и разовые работы по настройке и установке сервера.n
Примечание О mcelog
- Вы должны использовать 64-разрядную Linux операционную систему для запуска mcelog. Некоторые MCEs являются фатальными и решить проблему без перезагрузки или замены аппаратной части нет возможности, но поймать много плохого до аварии с помощью этого инструмента возможно.
- MCAT — утилита командной строки для Windows от AMD для декодирования MCEs от AMD K8, семейства 0x10 и 0x11 процессоров.
- mcedaemon — daemonthat может получать уведомления MCE, как только ядро находит их. Он не пытается интерпретировать данные MCE, просто предупредить других приложений.