The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Мониторинг аппаратных проблем в x86_64 сборке Linux
Для мониторинга аппаратных проблем в 64-разрядных сборках Linux удобно использовать пакет mcelog,
анализирующий MCE (Machine Check Exception) состояние в CPU AMD и Intel, которое может указать на 
проблемы с памятью и с кэшем CPU, ошибки обмена данными между CPU и чипсетом материнской платы.

В RHEL / CentOS / Fedora Linux ставим нужный пакет (работает только с 64-разрядной сборкой ядра):

   # yum install mcelog

В Debian / Ubuntu :

   # apt-get install mcelog


Прописываем запуск mcelog в crontab для пользователя root:

   */5 * * * *   /usr/sbin/mcelog --ignorenodev --filter >> /var/log/mcelog

Проверяем лог:

   # tail -f /var/log/mcelog
   # grep -i "hardware error" /var/log/mcelog
   # grep -c "hardware error" /var/log/mcelog

Для автоматической отправки предупреждения в случае проблем в вызов из crontab нужно добавить:

    [ $(grep -c "hardware error" /var/log/mcelog) -gt 0 ] && echo    "Hardware Error Found $(hostname) @ $(date)" \ 
    | mail -s 'H/w Error' pager@example.com
 
03.06.2009 , Источник: http://www.cyberciti.biz/tips/linux...
Ключи: hardware, crash, log, cpu, linux, monitoring / Лицензия: CC-BY
Раздел:    Корень / Администратору / Система / Просмотр состояния и мониторинг системы

Обсуждение [ RSS ]
  • 1.1, pavlinux (ok), 00:53, 06/06/2009 [ответить]  
  • +/
    Угу, только не забыть указать ядру при загрузке,

    mce=3

    Дабы всё узнать о своём железе

    А для для AMD ещё и

    mce=bootlog  

    так как для амд их (эксепшоны) отключают при загрузке


    И чё самое интересное, MCE появилось на Pentium PRO, Pentium II и AMD K6..., и это совсем не фишка x86_64

     
  • 1.2, pavlinux (ok), 01:42, 06/06/2009 [ответить]  
  • +1 +/
    А так же,

    Каждый логический процессор в системе, имеет директорию

    /sys/devices/system/machinecheck/machinecheckN
    (где N - номер процессора)

    Эти директории содержат файлы для динамической конфигурации, а именно:

    * bankNctl

    Содержит 64-х битную маску, включающая или отключающая определенные сообщения,
    об исключениях, для текущего ЦПУ. Если все биты маски равны нулю, тогда никакие
    сообщения не выдаются.

    Остальные файлы конфигурации, хотя и находятся в каждой папке sysfs, но изменения
    в любом из них влияют на все процессоры. (думается тяжело было бы реализовывать
    различные степени толерантности для разных ядер на одном CPU)

    * check_interval

    Интервал опроса процессора, в минутах, по умолчанию 5 минут.

    * tolerant
    Уровни толерантности:

    0: Всегда генерировать panic на неисправимых ошибках или записывать в лог исправленные.
    1: Генерировать panic или ошибку шины (SIGBUS) на неисправимых ошибках или записывать
        в лог исправленные.
    2: Генерировать ошибку шины (SIGBUS) на неисправимых ошибках или записывать в лог исправленные.
    3: НИКОГДА не генерировать panic или ошибку шины (SIGBUS), а только записывать лог
    (использовать только для тестирования)

    По умолчанию: 1

    И самое интересный конфиг MCE это  

    * trigger

    Программа которая будет запущена, когда в sysfs появляется какое-либо событие от MCE.

    Например запуск вывода на консоль, экран, или отправка почты

    # echo 'mail -t root -s "MCE EVENT: 'date "+%m.%d.%Y - %H:%M:%S"'"' > \
                        /sys/devices/system/machinecheck/machinecheck0/trigger

    Именно использование trigger удобнее, так как не надо дёргать крон каждые 5 минут.

    Так, выше кем-то скопипастенные команды, запишем в триггер, дабы освободить крон

    # export MCE_TRIGGER="/sys/devices/system/machinecheck/machinecheck0/trigger"
    # echo '/usr/sbin/mcelog --ignorenodev --filter >> /var/log/mcelog' > $MCE_TRIGGER;

     
     
  • 2.3, prapor (??), 12:18, 06/06/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Спасибо, занятное HOWTO :)
     
     
  • 3.4, pavlinux (ok), 19:16, 06/06/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Ну и от себя, если у Вас появляются ошибки, которые выдаёт MCE,
    надо срочно задуматься о выявлении причины и замене сбойного железа
    или фирмвари, если железо прошиваемое.

     
     
  • 4.6, i (??), 12:16, 10/06/2009 [^] [^^] [^^^] [ответить]  
  • +/
    у меня при высокой загрузке CPU линукс паникует
    CPU context corrupt что то там... отключил пока MCE добавив nomce при загрузке. Пока все ок.
    Разгон проца может влиять ?
    PS перегрева точно нет.
     
     
  • 5.7, pavlinux (ok), 14:39, 10/06/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >у меня при высокой загрузке CPU линукс паникует
    >CPU context corrupt что то там... отключил пока MCE добавив nomce при
    >загрузке. Пока все ок.
    >Разгон проца может влиять ?

    Может, может...
    Память тоже разогнал?


    Вот тут утиль, http://www.codemonkey.org.uk/cruft/parsemce.c
    Парсит на человеческий язык логи МСЕ


     
     
  • 6.8, i (??), 15:34, 10/06/2009 [^] [^^] [^^^] [ответить]  
  • +/
    не память не трогал, работает на заявленной частоте 1066
    а CPU c 2.66 -> 3.33
     
     
  • 7.9, pavlinux (ok), 22:51, 10/06/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >не память не трогал, работает на заявленной частоте 1066
    >а CPU c 2.66 -> 3.33

    Дык это ж на 25% от номинала.... сдохнет до играешься... не более 12%

     


     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру