絖綛 N@i.jp  昨日:00029295
 今日:00021443
 総計:00437021
keywords
管理者専用
  Post   Add link   Control Panel 































新しいトピック
最新:04/16 19:55


新しいコメント
最新:07/28 16:47






管理人へMAIL

プライバシーポリシー

LS-VL (3TB)のHDDが壊れた(2)

この製品、ファンの回転数制御が行われていないようです


 今朝は午前5時に目が覚めました。ちょっと早朝覚醒?これなら睡眠時間は足りている筈ですが、目が覚めた後 1時間ほど頭が麻痺したような感覚と眠気で意識がハッキリしない状態が続きました。トイレのため6時半頃に起床しましたが、起きるのが辛かった。


 HDDが壊れた LS-V3.0TLJ ですが、Mac でHDD全体にゼロ書き込みした後、何とか復活しました。とは言え、試行錯誤の連続で、何故か良く分からないけど何とか復旧したって感じ。基本的な方法は様々なサイトに書かれているのと同じなのですが、それらと同じ環境を整える事ができない(面倒)と言うこともあって変則的な方法を採った所もあります。備忘録として方法を整理しようとは思っていますが、どこまで正確か全く自信ナシ。内容も長くなりそうなので、また後日に。

 今回読めないセクタが発生したために HDD故障とされたのですが、そのHDDの S.M.A.R.T.情報を読んでみたら、温度が 59度まで上がった事があると分かりました。真夏にエアコンなしの部屋の中で稼働していたら、そのくらい高くなっても当たり前か?とも思いましたが、昨日S.M.A.R.T.情報を読むと室温21度なのに 48度まで上がっていました。しかしファンはいつもと同じ様子で、回転数が上がる気配は全く無し。これって HDDの温度は、まだ余裕って事なのかな?それともHDDの温度によってファンの回転数を上げるような制御はやっていないって事?
 一般的に HDDの温度は 40度前後で安定している方が良く、温度が60度を越えたり急激な温度変化に見舞われると一気に寿命が短くなるそうな。ワタシの Mac Proなどは風通しが良いものだから、この時期は上がっても30度を少し越える程度です。室温21度で 48度まで上がってしまうようなら、ファンの回転数をもっと高く設定することは出来ないものだろうか?と思って調べてみたら、HDDの温度によってファンの回転数を制御する仕組みがありながら、それが全く動いてなく、ファンは常時最低回転数で廻っているだけだと言うことが分かりました。

 先ずファンの回転数を変えたり現在の設定を見るには "/proc/buffalo/gpio/fan/control" ファイルにアクセスします。

例1)現在のファン回転数設定を見る
# cat /proc/buffalo/gpio/fan/control
slow

 ファンの回転数設定には stop, slow, fast, full の 4種類があり、この製品は常時 slow が表示されます。ファンの回転数を上げるよう設定を変更するには、

例2)ファン設定を変更して回転数を上げる
# echo fast > /proc/buffalo/gpio/fan/control

例3)ファンを最高回転数まで上げる
# echo full > /proc/buffalo/gpio/fan/control

 ファンの回転数が高ければ当然ファンの風切り音が五月蝿くなり、ファンの寿命にも影響してきましょう。しかし HDDが壊れるよりはマシです。
 あとは HDDの温度によりファンの回転数を上げたり下げたりできれば良いわけですね。実はこれも既に仕組みがあるのですが、LS-VL用の設定が行われていないため動いていないと言うことです。
 HDDの温度によるファン回転数制御の設定ファイルは "/etc/smartfanctld.conf" です。これを見ると、

# cat /etc/smartfanctld.conf
0x00000015:54 55 56:40 47 49

と書かれてあります。このファイルの書式は、

プロダクトID:u1 u2 u3:d1 d2 d3

プロダクトID = 製品のプロダクトIDコード
u1 = stop→slow に上げるHDDの温度
u2 = slow→fast に上げるHDDの温度
u3 = fast→full に上げるHDDの温度
d1 = slow→stop に下げるHDDの温度
d2 = fast→slow に下げるHDDの温度
d3 = full→fast に下げるHDDの温度

必ず u1>d1, u2>d2, u3>d3 である必要があります。このファイルに書かれている0x00000015 というプロダクトIDは LS-VL ではありませんで、LS-VL のプロダクトIDは 0x00000016 です。そこで、このファイルに LS-VL の設定を追加します。ワタシは HDD温度を40度前後に保ちたいと考えたので以下のようにしてみました。

# cat /etc/smartfanctld.conf
0x00000015:54 55 56:40 47 49
0x00000016:30 38 42:28 36 40

 ファンの回転数を切り替える温度は、部屋の室温や HDD温度を見て調整が必要になりそうです。設定ファイルを修正したら、

# /etc/init.d/smartfanctl.sh start
 * Starting smartfanctld ...    [ ok ]

という具合に起動させます。
 ps で見て /usr/local/sbin/smartfanctld.sh というシェルが走っているようなら多分大丈夫。このシェルは暫くsleepし、sleepから覚めたら smartctl で HDDの温度を調べて設定と比較、その結果で"/proc/buffalo/gpio/fan/control" ファイルに stop, slow, fast, full の何れかを書き込み、また sleepするを繰り返しているようです。

 何も負荷(read/write)をかけていない状態ですが、室温20〜23度、ファン回転数設定 fast で HDD温度は40度前後でほぼ一定しています。負荷かけたらどうなるかも試してみないとですね。ファン回転数設定が full でも温度が上がり続けるようなら、何か対策を考えないといけないかな?


 負荷(read/write)をかけて試してみました。
条件:
・室温22度
・ベンチマークアプリ(Blackmagic Disk Speed Test)による連続read/write負荷
・無負荷状態のHDD温度40度、ファン回転数設定 fastから開始

 負荷をかけ始めたところ徐々にHDDの温度が上がりだし、数分で 43度に達しました。暫くするとファン回転数設定が fullに変わり、負荷をかけていても HDDの温度が徐々に下りだしました。そのまま10分ほど温度を見ていましたが 41〜42度で平衡状態を保っており、HDD温度が上がり続けるような事はありませんでした。
 その状態でベンチマークアプリを止め無負荷状態にしたところ数分で 40度まで下がりましたが、そこからはなかなか下がらずファンの回転数設定は fullのまま。無負荷状態で十数分ほど経った頃にようやく 39度に下がり、ファン回転数設定が fast に変わりました。その後、数分で 40度になり平衡状態になりました。
 この結果から、この時期の室温であれば負荷をかけても 40度前後の温度を保てそうです。やはり、昨日 HDD温度が48度まで上がった原因は、ファン回転数が slowのままだったからだと言えそうです。また、きちんとファンの回転数制御を行えば、HDDの温度上昇をある程度抑える事が可能と思われます。
 ただ、これはあくまで室温22度での結果なので、真夏のエアコン無しの状態の室内だったら 40度前後を保つのは難しいでしょうね。


< 過去の記事 [ 1月の 全てのカテゴリ リスト ] 新しい記事 >

2014 calendar
1月
1234
567891011
12131415161718
19202122232425
262728293031


掲示板
最新:08/15 17:19


GsBlog was developed by GUSTAV, Copyright(C) 2003, Web Application Factory All Rights Reserved.