mk-mode BLOG

このブログは自作の自宅サーバに構築した Debian GNU/Linux で運用しています。
PC・サーバ構築等の話題を中心に公開しております。(クローンサイト: GitHub Pages

ブログ開設日2009-01-05
サーバ連続稼働時間
Reading...
Page View 合計
Reading...
今日
Reading...
昨日
Reading...

MRTGでハードディスク温度監視!

[ サーバ構築 ] [ Fedora, Linux ]

こんばんは。

今日は、 前回に引き続いて、MRTGの話です。 MRTGにハードディスクの温度を監視する機能を追加してみました。

ハードディスクの温度は「 hddtemp 」というものを使ってモニタできます。

ちなみにCUIベースでのインストールはこんな感じで。

1
# yum install hddtemp

使い方はこんな感じ。

1
2
# hddtemp /dev/sda
/dev/sda: Maxtor 6V250F0: 37°C

温度の数字だけを出力するにはこんな感じ。

1
2
# hddtemp -n /dev/sda
41

「 hddtemp 」の詳しい使い方は以下でわかります。

1
# hddtemp --help

この「 hddtemp 」をMRTGで使えるようにしてみました。 ※Feora10にMRTGインストール済みが前提です。 (MRTGインストール方法は こちら を参照)

導入記録

1.シェルスクリプトを作成

例として root に「 hddtemp.sh 」というファイルに以下のように記述。

1
2
3
4
#!/bin/sh

/usr/sbin/hddtemp -n /dev/sda1
/usr/sbin/hddtemp -n /dev/sda2

「 hddtemp.sh 」に実行権を与える。

1
# chmod 755 hddtemp.sh

2.MRTGの設定ファイルの修正

MRTGの設定ファイル「 /etc/mrtg/mrtg.cfg 」の最後に以下のような記述を追加する。

1
2
3
4
5
6
7
8
9
10
11
12
Target[hddtemp]: `/root/hddtemp.sh` ←監視対象の設定(※)
MaxBytes[hddtemp]: 80 ←監視している値の最大値
Title[hddtemp]: ハードディスクの温度 ←生成するWebページ(HTMLファイル)のタイトル
PageTop[hddtemp]:<h1>ハードディスクの温度</h1>←Webページの冒頭に表示する文字列
Options[hddtemp]: growright,absolute,gauge,nopercent,noinfo ←下記の表を参照
WithPeak[hddtemp]: ymw ←年(y)月(m)週(w)の各最大値を表示
YLegend[hddtemp]: Temperature ←グラフのY軸のラベル
ShortLegend[hddtemp]: C ←最大(Max)平均(Average)現在(Current)の単位を表す文字列
LegendI[hddtemp]: Temp: ←凡例に表示する文字列
LegendO[hddtemp]:
Legend1[hddtemp]: HDD Temperature in Degrees Celcius ←凡例に表示する文字列
Legend2[hddtemp]:

(※)ここに直接「 /usr/sbin/hddtemp -n /dev/sda1 」と記述すると「返ってくる値足りない」というワーニングが出る。

3.各画面の統合

元々あるMRTGの4つが統合された画面に「 hddtemp 」も同じように統合するには、以下のようにする。 ・MRTGインデックスページ作成

1
2
3
# indexmaker --columns=1 \
>--addhead="<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=euc-jp\">" \
>/etc/mrtg/mrtg.cfg > /var/www/html/mrtg/index.html

・MRTGインデックスページ編集

1
2
# vi /var/www/mrtg/index.html
    <!-- <meta http-equiv="content-type" content="text/html; charset=iso-8859-15" > -->  < - - - コメントアウト(文字化け対策)

4.動作確認

http://%E3%82%B5%E3%83%BC%E3%83%90%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9/mrtg/ 」にアクセスしてみる。 MRTGが正常に動作していれば、設定した間隔(ここでは5分)でモニタできるはずです。 ↓↓こんな感じ↓↓

mrtg_hddtemp_01

「ハードディスクの温度」をクリックして、以下のようになるはず。

mrtg_hddtemp_02

mrtg_hddtemp_03


設定は以上です。

もし、エラーがあればCronDaemonからメールが設定した間隔(ここでは5分)ごとに届きます。

※MRTG自体の操作については こちら を参照してください。

次はCPUの温度監視かなっ!?

それでは、また。

Comments