2006年6月16日金曜日

smartmontoolsをちゃんと活用したいな

今日は、

smartmontoolsでハードディスクの致命的エラー発生を事前に察知

のつづき、というか、落穂ひろいというか、実は単に、お茶をにごす話。ネタ切れというか、時間切れというか・・・



前回、

「914 hours (38 days + 2 hours)」のように、時間みたいなのが出ていますが、これが、いつエラーが発生したかのことなんですが、ドライブの中にある謎の時計で測っているらしく、いつのことだかよくわかんないです。

とか

ついさっきself testを実行したんですが、その結果が「Completed without error」と記録されています。「1016」が、ハードディスクドライブの“腹時計”の値ですね。だから、この値と、Error発生時の値の差から(値の単位は、1時間=60分です)、いつエラーが発生したのか、私は判断しています。もちっと、わかりやすく見る方法はあるのかな?

とか言ってましたが、smartctlの結果を、先頭から眺めていたら、なにか、気になるものが・・・



「smartctl -a デバイス」もしくは「smartctl -A デバイス」というコマンドを実行して、「SMART Attributes Data Structure ほにゃらら」というところを見ます。
たとえば、こんなかんじ。



SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000f   061   060   006    Pre-fail  Always       -       145508798
  3 Spin_Up_Time            0x0003   097   096   000    Pre-fail  Always       -       0
  4 Start_Stop_Count        0x0032   100   100   020    Old_age   Always       -       0
  5 Reallocated_Sector_Ct   0x0033   100   100   036    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x000f   083   060   030    Pre-fail  Always       -       231159823
  9 Power_On_Hours          0x0032   094   094   000    Old_age   Always       -       5881
10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
12 Power_Cycle_Count       0x0032   100   100   020    Old_age   Always       -       91
194 Temperature_Celsius     0x0022   044   050   000    Old_age   Always       -       44



この中に、「9 Power_On_Hours」というのがあって、5881とあるじゃないですか。
あ!これかぁ!



セルフテストのログを見てみました。
最近は、毎晩1回実行しているので、LifeTimeが24時間くらいずつ増えてます。



SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Short offline       Completed without error       00%      6894         -
# 2  Short offline       Completed without error       00%      6871         -
# 3  Short offline       Completed without error       00%      6849         -
# 4  Short offline       Completed without error       00%      6827         -



えーと、6894ですか・・・あれ?5881と6894・・・やっぱり、ぜんぜん違う値だな。なんなんだ、この腹時計は!?



やっぱり、ATAの規格書を読まないといけないのかなぁ。
とりあえず、まずはsmartmontoolsのドキュメントをちゃんと読むか。



☆ ☆ ☆ ☆ ☆ ☆ 



「SMART Attributes Data Structure ほにゃらら」というところの、最後の値って、けっこう頻繁に変化していたんですね。
どういう値を採取できるのかは、ドライブの種類(型番)ごとに異なっているようですが、たとえば、さっきみたドライブでは、Temperature_Celsius(摂氏単位の温度/でもどこを測ってるの?)とか、「Hardware_ECC_Recovered」、「Reallocated_Sector_Ct」、「Raw_Read_Error_Rate」などなど、興味深げな値が採取できているようです。



これを定期的に採取して(recommended polling time: (   1) minutes.と書いてあるので、1分ごとですか)、その値を、rrdtoolでグラフにしてみるとおもしろいかもしれません。これから、perlスクリプトでも書いてみますか。
・・・ただ、rrdtoolの使い方がよくわからないんですけど。ハナモゲラだなぁ・・・





0 件のコメント:

コメントを投稿