SMARTチェック(ubuntu10.10)

Last-modified: 2011-11-07 (月) 17:14:19

CD起動のLive Linuxを使ったsmartのチェック

ubuntu1010_diskutility_smartcheck.jpg


  1. ubuntuの10.10日本語版をCDに焼いて起動する
    • CDイメージはここから http://www.ubuntulinux.jp/products/JA-Localized/download
    • CDで起動中にインストールするかと訊ねられたら「ubuntuを試す」を選ぶ
    • Firefox を起動して「hdd wikiwiki.jp」を検索し、このページを出して見ながら作業する
  2. 右上の時計をクリックして時間を合わせる。場所に「東京」と打ってどちらか選んでセット
  3. システム→システム管理→Synapticパッケージ・マネージャを出して「再読込」して
    • クイック検索」に「smartmontools」と打って、出てきたパッケージをインストール指定して「適用」、
    • Postfix Configurationは「設定なし
  4. アプリケーション→アクセサリ→端末 ウィンドウを出して
    • sudo smartctl -t short /dev/sda」と打って、3分待とう
  5. その端末で「sudo smartctl -a /dev/sda | less」すればsdaの情報が分かる
  6. システム→システム管理→ディスク・ユーティリティ を起動して「SMARTデータ」のボタンを押す
  7. あとはテストの種類を選んで実行して、待つだけ

拡張セルフテストの所要時間と途中経過

  • 拡張セルフテストの所要時間は機種によるけど1TBで4~6時間、2TBで6~9時間、3TBで8~12時間。同一機種でも個体差があり所要時間は異なります。
  • 端末で「sudo smartctl -a /dev/sda | less」すれば、まだやってる最中か、エラーで中断したかどうかわかることもあります。SMART Self-test log structureセクションの「Remaining」の次の行に注目。下のは「あと10%残っている」例。最新のセルフテスト履歴のステータスは in progress (続行中)。
    SMART Self-test log structure revision number 1
    Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
    # 1  Extended offline    Self-test routine in progress 10%       161         -
    # 2  Extended offline    Completed without error       00%       107         -
    # 3  Short offline       Completed without error       00%        96         -

物理障害修復の実例

物理障害があるといつまで待ってもSelftestが終わらないことがあります。
一晩待っても終了しないときはリブートしてsmartctlで見てみると、エラーを検知した最初のLBA番号が出ているかもしれません。↓はLBA23958834番地でエラーに遭遇して停止した例。

SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Extended offline    Completed: read failure       90%     23391         23958834
# 2  Short offline       Completed without error       00%     23388         -
# 3  Extended offline    Completed without error       00%     16857         -

セルフテストで読み出せないエラーがあると中止終了します。セクタの部分修復も可能ですが、ゼロフィルが手っ取り早いです。ゼロフィルすると中のデータはすべて消えます。↓は、↑のエラーで停止した後、ゼロフィルしてから再度Short Selftestをかけた例。

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%     23406         -
# 2  Extended offline    Completed: read failure       90%     23391         23958834
# 3  Short offline       Completed without error       00%     23388         -
# 4  Extended offline    Completed without error       00%     16857         -

物理障害がある場合、ゼロフィルも完走しないことがあります。何度目で完走するか、何度やっても完走しないかは障害の程度次第です。
↓は、念のためさらに1回ゼロフィルをかけてからExtended Selftestをかけて完走した後のもの。

SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Extended offline    Completed without error       00%     23409         -
# 2  Short offline       Completed without error       00%     23406         -
# 3  Extended offline    Completed: read failure       90%     23391         23958834
# 4  Short offline       Completed without error       00%     23388         -
# 5  Extended offline    Completed without error       00%     16857         -

ゼロフィルと拡張セルフテストが共に完走すれば、理屈の上では全セクタに書いて全セクタから読み出せたということです。
しかし、あくまでも理屈の上での話で、プラッタに傷がついたHDDはゼロフィルをかけるたびにどんどんリアロケが増えたり、セルフテストをかけるたびに別のLBAで止まったりします。その時は諦めましょう。
理屈がよくわからないときは、完走するまでゼロフィル→拡張セルフテストを繰り返して不良セクタを完全に埋めます。何度やってもセルフテストで同じ位置で止まるときは、その部分を避けてパーティションを複数切って使う手もあります。

↑の不良セクタの修復の経過ログ・値の推移・推察

short selftest後
23,388時間目 http://pastie.org/1448692
extended selftest失敗中断終了後
23,392時間目 http://pastie.org/1448694
ゼロ埋め・short selftest後
23,406時間目 http://pastie.org/1448649
ゼロ埋め・extended selftest後
23,409時間目 http://pastie.org/1448653
Reallocated_Sector_Ct の推移
2 → 385 → 561 → 586
Reallocated_Event_Count の推移
2 → 588 → 792 → 823
Current_Pending_Sector の推移
0 → 1 → 0 → 0
  • ペンディングの減少はゼロ埋めしたことでリアロケに転換したからと思われます。
  • リアロケが385→561と増えているのを見ると読めないセクタはもっとたくさんあったはずなのに、23,392時間目にペンディングが1個しか出てません。理由は、extended selftestでは読めないセクタに遭遇するとそこで止まってしまうから。
  • メーカ純正ツールで拡張テストするとダメージセクタが複数個ある場合でも、1個目で止まらず全部チェックできるかもしれません。
  • これはモデルがちょっと古すぎて、今の垂直磁気モデルでも同じような経過をたどるかどうかはわかりません。Selftestは各社各モデルごとに機能や振る舞いが少しずつ異なります。同じような故障でも必ずしも同じような経過をたどるとは限りません。あくまでも一例として挙げました。