上の現象でCPU温度を確認したいと考え、調べてみたところLinuxではlm_sensorsというソフトが一般的なようです。CentOS 5.6にもバージョン2.10.7がパッケージとして存在しインストールされていました。
が、うちのマシン、ASUSのP6TというX58チップセットのマシンなのですが
# sensors-detect
と、最初のデバイスの確認を実施しても見つかりません。lm_sensorsの最新版が3.3.0とバージョン番号が古いのが影響している模様。
いろいろと調べてみたところ、こちらのページで、lm_sensorsはそのままで最新のsensors-detectファイルを使い、kmod-coretempをインストールする方法を見つけました。/usr/sbin/sensors-detectはperlスクリプトなんですね。kmod-coretempをインストールするのは後々のパッケージ管理がめんどうだから置いておくとして最新のsensors-detectファイルを試してみるのはありかも。とやってみました。
# wget http://dl.lm-sensors.org/lm-sensors/files/sensors-detect # chmod 755 sensors-detect # ./sensors-detect
と実行してみると今度はうまくいったようで/etc/sysconfig/lm_sensorsを置き換えますか? と出るので、置き換えて完了です。すると、
# sensors coretemp-isa-0000 Adapter: ISA adapter Core 0: +83°C (high = +100°C) coretemp-isa-0001 Adapter: ISA adapter Core 1: +82°C (high = +100°C) coretemp-isa-0002 Adapter: ISA adapter Core 2: +78°C (high = +100°C) coretemp-isa-0003 Adapter: ISA adapter Core 3: +80°C (high = +100°C)
とCPU温度だけ取得できるようになりました。今、負荷をかけているので80℃前後と高めですね。
ちなみにD945GCLF2のAtomマシンですが、こちらは標準のlm_sensors-2.10.7-9.el5だけでsensors-detectが完了し、
# sensors smsc47m192-i2c-0-2d Adapter: SMBus I801 adapter at 2000 +2.5V: +2.53 V (min = +0.00 V, max = +3.32 V) VCore: +1.16 V (min = +0.00 V, max = +2.99 V) +3.3V: +3.32 V (min = +0.00 V, max = +4.38 V) +5V: +4.92 V (min = +0.00 V, max = +6.64 V) +12V: +12.12 V (min = +0.00 V, max = +15.94 V) VCC: +3.32 V (min = +0.00 V, max = +4.38 V) +1.5V: +1.56 V (min = +0.00 V, max = +1.99 V) +1.8V: +1.76 V (min = +0.00 V, max = +2.39 V) Chip Temp: +35.0°C (low = -127°C, high = +127°C) CPU Temp: +54.0°C (low = -127°C, high = +127°C) Sys Temp: +42.0°C (low = -127°C, high = +127°C) vid: +2.050 V (VRM Version 8.2) smsc47m1-isa-0680 Adapter: ISA adapter fan1: 0 RPM (min = 1280 RPM, div = 4) ALARM fan2: 4726 RPM (min = 1280 RPM, div = 4)
と各種デバイス値が取得できています。