CentOSでCPU温度を測りたい

linuxでCPU温度を計測する際には、lm_sensorsというソフトを入れればいいんですが、yum install lm_sensorsとしてインストールしたけど、エラーでうまく動きませんでした。

というわけで最新版を下記からダウンロードしてコンパイルしてインストール(lm-sensors 3.0.3)
http://www.lm-sensors.org/

configureファイルがないので、いきなりmakeします

make 
make install

これで/usr/local/bin, /usr/local/sbin以下にlm_sensorsがインストールされます。

まずは/usr/local/sbin/sensors-detectを実行して、自分のハードウェア環境をスキャンして定義ファイルを作ります。
ほとんどリターンでOK

sensors-detectの完了画面で、下記のようにファイルを修正する指示があるので、そのようにする。ただし、下記の内容は各ハードウェアによって異なるので、sensors-detectが出力した結果をコピペすること(cut hereという文字があるのでそれを目印にコピペ)

vi /etc/modprobe.confで下記を追加

# I2C module options
alias char-major-89 i2c-dev
vi /etc/rc.localで下記を追加

# I2C adapter drivers
modprobe i2c-piix4
# I2C chip drivers
modprobe lm92
# sleep 2 # optional
/usr/bin/sensors -s # recommended


lm_sensorsデーモンが起動されるようにする

/sbin/chkconfig lm_sensors on


/etc/rc.d/init.d/lm_sensorsを編集して、sensorsコマンドのパスを書き換える

PSENSORS=/usr/local/bin/sensors


最後に、共有ライブラリにsensorsのライブラリを追加します。sensorsのライブラリは/usr/local/lib以下にあります。

vi /etc/ld.so.conf.d/local.confで下記を記載

/usr/local/lib

下記コマンドを実行して共有ライブラリパスに追加
/sbin/ldconfig

reboot

リブートしたら、/usr/local/bin/sensorsと打つと下記のように温度が出力される

k8temp-pci-00c3
Adapter: PCI adapter
Core0 Temp:   +0.0°C
Core0 Temp:   -1.0°C
Core1 Temp:   +0.0°C
Core1 Temp:  -11.0°C

ただ、カーネルを再構築する前は
上記の内容しか表示されなかったので、カーネルを最新のもので再構築したらうまく表示されるようになった。

k8temp-pci-00c3
Adapter: PCI adapter
Core0 Temp:   +0.0°C
Core0 Temp:   -1.0°C
Core1 Temp:   +0.0°C
Core1 Temp:  -11.0°C

it8718-isa-0228
Adapter: ISA adapter
in0:         +0.98 V  (min =  +0.00 V, max =  +4.08 V)
in1:         +1.94 V  (min =  +0.00 V, max =  +4.08 V)
in2:         +3.39 V  (min =  +0.00 V, max =  +4.08 V)
in3:         +3.02 V  (min =  +0.00 V, max =  +4.08 V)
in4:         +3.02 V  (min =  +0.00 V, max =  +4.08 V)
in5:         +3.26 V  (min =  +0.00 V, max =  +4.08 V)
in6:         +4.08 V  (min =  +0.00 V, max =  +4.08 V)   ALARM
in7:         +1.78 V  (min =  +0.00 V, max =  +4.08 V)
in8:         +3.07 V
fan1:        855 RPM  (min =    0 RPM)
fan2:          0 RPM  (min =    0 RPM)
fan3:          0 RPM  (min =    0 RPM)
fan4:          0 RPM  (min =    0 RPM)
temp1:       +31.0°C  (low  = +127.0°C, high = +127.0°C)  sensor = thermistor
temp2:       +20.0°C  (low  = +127.0°C, high = +127.0°C)  sensor = thermal diode
temp3:       +29.0°C  (low  = +127.0°C, high = +127.0°C)  sensor = thermistor
cpu0_vid:   +1.550 V