検索条件
全10件
(1/1ページ)
exec('test.rb')としても
exec('ruby test.rb')が正解。
#smartctl /dev/hdaなんかでステータスが見られるのだが、温度に関しては87万度とか異常な値が出ている。調べてみると、smartsuiteはすでにメンテナンスされておらず、smartctlはsmartmontoolsというソフトに受け継がれたらしい。
# apt-get install smartmontools/testing # smartctl -A /dev/hda |grep -i tempほい正常動作。
# apt-get install lm-sensors/testing sysvinit/testing coreutils/testing libacl1/testing libattr1/testing依存で引っかかると、
Sorry, but the following packages have unmet dependenciesなどのメッセージが出る。依存関係は1つ1つで見てくのが普通? perlとlibc以外はこのやり方で大騒動は起こらないんだろうけど。今回は手動で全部見た。
# sensors-detectで、使われているチップを見る。Ez!goはWinbondのW83627HFで確定(この後蓋開けて基盤上でも確認)。
# sensorsで見られるはずなのだが……
"ERROR: Can't get IN0 data!" ……と出てデータが出てこない。
$ cd ~/kernel $ wget <a HREF="http://www.asahi-net.lkams.kernel.org/pub/linux/kernel/v2.6/linux-2.6.11.8.tar.gz" TARGET=_top>http://www.asahi-net.lkams.kernel.org/pub/linux/kernel/v2.6/linux-2.6.11.8.tar.gz</a> $ tar -xvzf linux-2.6.11.8.tar.gz $ cd linux-2.6.11.8 $ make menuconfigで上記のもの(ただしw83781d->w83627hf)をモジュールではなくカーネル組み込みでごりごり追加し、
# make V=0 # make installあーもう適当だ。ちょっとテンパってたのでカーネルの保存とか考えてないね。
# reboot # sensors w83627hf-isa-0290 Adapter: ISA adapter VCore 1: +1.50 V (min = +0.00 V, max = +0.00 V) VCore 2: +1.28 V (min = +0.00 V, max = +0.00 V) +3.3V: +3.28 V (min = +3.14 V, max = +3.47 V) ……ちゃんと表示されました! やった。
echo 255 > /sys/devices/platform/i2c-2/2-0290/pwm1でファンの回転がアップ。echoの値が2で通常。0でストップ。ただし、このマシンはBIOSでファン制御が強いのか20secくらいですぐ元に戻る。
#! /usr/bin/ruby $MAXTEMP=40 temp = `/usr/sbin/smartctl -A /dev/hda | grep -i temp` temp = temp[/\s+(\d+)\s+\(Lifetime/, 1] if $MAXTEMP < temp.to_i then (1..600).each { `echo 255 > /sys/devices/platform/i2c-2/2-0290/pwm1` sleep 1 } endとした。40度を超えていたら10分回転アップを打ち続ける。cron.dの中がなんかちゃんと動いてないんだよな。ということでhourlyにしました。