目次
hddtempを用いた温度測定方法。
hddtempのソース本体とDBをダウンロードする
wget http://download.savannah.gnu.org/releases/hddtemp/hddtemp-0.3-beta15.tar.bz2 wget http://www.guzu.net/linux/hddtemp.db
ダウンロードしたソースをコンパイルする。
コンパイル時にはDBの格納場所を指定する。
インストール先は/usr/local/sbinの配下となる。
tar xfvj hddtemp-0.3-beta15.tar.bz2 cd hddtemp-0.3-beta15 ./configure --with-db-path=/etc/hddtemp/hddtemp.db make make install
DBを所定位置に保管する。
mkdir /etc/hddtemp cp hddtemp.db /etc/hddtemp
摂氏で測定を行う。
hddtemp --unit=C /dev/sd[] hddtemp --unit=C /dev/hd[]
# hddtemp --unit=C /dev/sda /dev/sda: Hitachi HTS543232A7A384: 36°C
# hddtemp --unit=C /dev/sda WARNING: Drive /dev/sda doesn't appear in the database of supported drives WARNING: But using a common value, it reports something. WARNING: Note that the temperature shown could be wrong. WARNING: See --help, --debug and --drivebase options. WARNING: And don't forget you can add your drive to hddtemp.db /dev/sda: CFD SiliconHardDisk 0°C or °F
ZABBIX Agentのリモートコマンドとsystem.runを使用してhddtempを実行する。
EnableRemoteCommands=1
アイテムはsystem.runを使用する。
日本語環境でhddtempを実行すると摂氏の記号が含まれてしまうため、コマンド実行前に言語をASCIIに変換する。
数値データのみ取得する必要があるため、awkにて出力結果を加工をしている。(cutでも同様の対応が可能)
| 説明 | HDD Temp (/dev/sda) |
| タイプ | Zabbixエージェント |
| アイテムキー | system.run[export LANG=C ; /usr/bin/hddtemp /dev/sda | awk '{print $4}'] |
| データ型 | 数値(整数) |
| データ形式 | 10進数 |