Переход к предыдущей публикации Защищаем wp-comments-post.php с помощью Simple Captcha. Akismet отдыхает Полуночная “романтика” при свечах Переход к следущей публикации

mbmon - контроль температуры “железа” под FreeBSD

Понедельник, 6 апреля, 2009 12:22:45 EEST

Исправления от 21 апреля, 2009 01:08:39

Выделенные сервера дешевле обычного хостинга

mbmon - утилита для контроля температуры в системе Ночь на понедельник выдалась несколько беспокойной. Около 22.30 сервер был потерян из виду по неизвестной причине. Удаленный мониторинг буркнул об этом SMS’кой, но, та пришла видимо с небольшим запозданием и среагировал я на возникшую проблему уже после одинадцати вечера.

Сервер по локальной сети не пинговался, маршрутизация во “внешку” тоже не работала. Становилось понятно, что “ежик сдох”. Опасения подтвердились после того, как к трупу были подключены монитор и клавиатура. Пациент отреагировал только на RESET. :(

Естественно, в сложившейся ситуации сразу возник вопрос: “Что же произошло?” Зашел в BIOS в Hardware Monitor и обалдел. Температура CPU 75 градусов Цельсия. Датчики температуры материнской платы тоже показывали завышенные значения. Насколько мне не изменяет память, нормальная температура для Celeron D 2.4 Hz (и ему подобных) должна лежать в пределах 40 - 60 градусов. Выше - ненормально! Сработала, видимо, защита от перегрева и процессор просто отключился.

Я сначала усомнился в правильности этих значений. Слышал не раз, что датчики температуры, которые ставят производители “железа” очень часто врут и бывает даже что на несколько порядков. Решил перепровериться. В арсенал электромонтажника я когда-то покупал себе ампервольтомметр или, как его еще называют, мультиметр. Ничего особенного. Обычная китайская электроника, работающая от 9-ти вольтовой кроны, которая, как ни странно, еще ни разу не подводила. В комплекте с мультиметром шла термопара, с помощью которой можно было измерять температуру поверхности радиатора на процессоре. Термопарой я еще ни разу за три года не пользовался, но здесь она мне сослужила добрую службу. Температура на радиаторе процессора уже выключеной системы была около 65 градусов. Вывод: показатели не врут и с перегревом надо что-то делать.

А сделать нужно было всего лишь: снять радиатор, снять с него куллер и убрать из-под него отложения пыли.  :lol: (вообще, у меня в правилах дважды в год очищать системные блоки пылесосом, но каким-то образом отложения накопились раньше срока). Конечно же, не следует забывать подложить после всего горошинку свежей термопасты между поверностью процессора и радиатора.

После такого “секса с железом” в голове проскочила мысль: “А неплохо бы регулярно мониторить температуру в системнике и в случае появления тревожных симптомов оперативно на них реагировать“. Сказано - сделано!

Что нам нужно для мониторинга температуры? Две вещи: то, что будет эту температуру снимать с датчиков и то, что будет ее визуализировать, например, отрисовывая в красивых графиках. Второе - это конечно же RRD. :) А первое?

Для Windows есть масса софта, позволяющего отслеживать температуру всего, чего угодно (главное, чтобы датчики стояли в нужных местах). А для FreeBSD?.. А для FreeBSD, путем недолгого ковыряния в портах /usr/ports/sysutils/, можно отыскать утилиту mbmon, для которой присутствуют как консольная, так и GUI’ная версии.

Port:   mbmon-205_4
Path:   /usr/ports/sysutils/mbmon
Info:   A tty motherboard monitor for LM78/79, W8378x, AS99127F, VT82C686 and ADM9240
Maint:  ports@FreeBSD.org
B-deps:
R-deps:
WWW:    http://www.nt.phys.kyushu-u.ac.jp/shimizu/download/download.html

Port:   xmbmon-205_9
Path:   /usr/ports/sysutils/xmbmon
Info:   A X motherboard monitor for LM78/79, W8378x, AS99127F, VT82C686 and ADM9240
Maint:  ports@FreeBSD.org
B-deps: kbproto-1.0.3 libICE-1.0.4_1,1 libSM-1.0.3_1,1 libX11-1.1.3_1,1 libXau-1.0.3_2 libXdmcp-1.0.2_1 libXt-1.0.5_1 pkg-config-0.23_1 xproto-7.0.10_1
R-deps: kbproto-1.0.3 libICE-1.0.4_1,1 libSM-1.0.3_1,1 libX11-1.1.3_1,1 libXau-1.0.3_2 libXdmcp-1.0.2_1 libXt-1.0.5_1 pkg-config-0.23_1 xproto-7.0.10_1
WWW:    http://www.nt.phys.kyushu-u.ac.jp/shimizu/download/download.html

За утилитку благодарим японца Накамуру Казуши (Nakamura Kazushi). И хотя mbmon поддерживает далеко не весь спектр материнских плат, продающихся нынче на рынке компьютеров, если у Вас материнка Asus на чипах Intel, mbmon должен с ней работать.

Ставим mbmon без GUI:

# cd /usr/ports/sysutils/mbmon
# make install clean

Рекомендую сразу же ознакомиться с файлом /usr/ports/sysutils/mbmon/pkg-descr

Это графическая/консольная мониторилка материнских плат, которая поддерживает
LM78/79, WINBond 83781D/83782D/83783S, ASUS 991227F, и VIA VT82C686A/B PC-health
чипы посредством трех способов: через шины ISA-I/O, SMBus, VIA-direct.

Запустите "mbmon -h" или "xmbmon -help" чтобы увидеть подсказки по использованию.

***ВНИМАНИЕ***.

Эта программа получает доступ к шине SMBus или же к порту ввода-вывода ISA напрямую
с привелегиями суперпользователя и потому может вызвать падение системы.
Пожалуйста, протестируйте программу сначала в режиме отладки запустив ее с ключом:
 "mbmon -d" (или "xmbmon -debug" для GUI версии).

Напугал дядько. :lol: Попробовал я запустить ее в режиме “mbmon -d” - нифига страшного не случилось, потому сел читать ман.


Эта часть публикации доступна только зарегистрированным посетителям!
Пожалуйста, войдите [Login] или зарегистрируйтесь [Register].

Мануал - это конечно хорошо, но перейдем к практике. Как видно из man’а, mbmon может работать в режиме даемона и выдавать показания по телнет. Это может пригодиться, если у Вас несколько машин в сети, на которых следует мониторить температуру. Но я буду использовать mbmon в режиме единоразового запуска.

Путем недолгих экспериментов я выяснил, что с моей материнкой (ASUS P4P800-MX) mbmon будет работать в режиме “ISA I/O port”. Другие способы не поддерживаются. Составим необходимую команду:

# mbmon -c 1 -r -I -u -t -n
TEMP0 : 41.0
TEMP1 : 49.0
TEMP2 : 48.0
FAN0  :    0
FAN1  : 3013
FAN2  :    0
VC0   :  +1.42
VC1   :  +3.17
V33   :  +3.39
V50P  :  +5.05
V12P  : +11.49
V12N  : -14.92
V50N  :  -7.71
Mon Apr  6 12:16:10 EEST 2009
12:16pm  up  9:38
daemony.org

Согласно документации, здесь мы имеем:

  • TEMP0 - показания температурных датчиков на материнской плате;
  • TEMP1 - показания температурных датчиков центрального процессора;
  • TEMP2 - показания температурных датчиков чипов на материнской плате.

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

P.S.: Попробуйте запустить тулзовину так: “mbmon -c 1000  -r -I | grep TEMP1;)

UPD: для отчета

mbmon был установлен сразу после того, как я “завел” систему после первого дауна (на рис. период “1″) и тоже сказал, что температура процессора около 75 градусов… Значит можно считать, что датчики на материнской плате не врут и показания снимаются верно.

Падение сервера 2009-04-05

Даунтайм в период “2″ на рисунке - это процесс чистки от пыли и грязи :) Таким образом в прошлую ночь получилось два даунтайма с интервалами в один час и полчаса.

Похожие публикации

Комментариев 16

1 2

denis4e 1 октября, 2009 20:03:31 EEST .:. ID #18388 .:.

А вот второй бокс - ASUS P4GE-MX:
[root@simclone /usr/ports/sysutils/consolehm]# mbmon -I -r -c1
TEMP0 : 29.0
TEMP1 : 26.0
TEMP2 : 127.5
FAN0 : 0
FAN1 : 2743
FAN2 : 0
VC0 : +3.07
VC1 : +3.14
V33 : +3.30
V50P : +5.05
V12P : +15.50
V12N : -12.45
V50N : -5.50

denis4e 1 октября, 2009 19:59:40 EEST .:. ID #18386 .:.

Народ, я наблюдаю два весьма различных по железу компа, так у меня TEMP2 > 120! Это как вообще может быть?
[root@simfero /usr/ports/sysutils/mbmon]# /usr/local/bin/mbmon -I -r -c1
TEMP0 : 33.0
TEMP1 : 35.0
TEMP2 : 124.5
FAN0 : 0
FAN1 : 2163
FAN2 : 0
VC0 : +2.43
VC1 : +3.54
V33 : +3.30
V50P : +5.51
V12P : +12.22
V12N : +2.20
V50N : +2.49

Мать ASUS p5k-e

Daemony 7 сентября, 2009 13:13:28 EEST .:. ID #17081 .:.

Time: Удаленный мониторинг буркнул об этом SMS’кой
Как реализовал?

-=-ссылка-=- - сервис Яндекса для веб-мастеров. Аналог Google Analytics. Среди всех возможностей, можно также настроить SMS уведомление о недоступности сайта.

Кроме того, -=-ссылка-=- - сервис мониторинга серверов. Но у них отправка SMS уведомлений - платная услуга.

Time 5 сентября, 2009 20:43:07 EEST .:. ID #17005 .:.

Удаленный мониторинг буркнул об этом SMS’кой
Как реализовал?

Daemony 8 апреля, 2009 02:08:20 EEST .:. ID #7394 .:.

очень жду, потому что с cacti у меня не получилось…

Господа, статья по использованию RRD выложена. Прошу читать, оценивать, вносить корректировки и дополнения.

И еще один нюанс, так как к девайсам доступ на чтение только у группы operator
пришлось пользователя zabbix добавить в эту группу

pw groupmod operator -m zabbix

Я так понимаю это не есть безопасно.

В зависимости от того, кто имеет доступ к твоему Забиксу. Если только ты, то беспокоиться думаю не о чем. А что говорит документация относительно внесения пользователя zabbix в группу operator. ?

gt_x 7 апреля, 2009 22:28:08 EEST .:. ID #7389 .:.

И еще один нюанс, так как к девайсам доступ на чтение только у группы operator
пришлось пользователя zabbix добавить в эту группу

pw groupmod operator -m zabbix

Я так понимаю это не есть безопасно.
Поправте меня!

1 2

Возник вопрос по этой теме, или есть что добавить? Говорите!

  1. Зарегистрированным пользователям вводить защитный код (captcha) не приходится.
  2. Загрузить свою аватарку Вы сможете, зарегистрировавшись на сервисе www.gravatar.com
Публикуя комментарий Вы подтверждаете, что ознакомились c Правилами и принимаете их!
HOMOSAPIENS ONLY! :)