ハードディスクの診断

物理障害の判断

不具合の発生したハードディスクを扱うときに、まず考えなければならないのは、
物理障害と論理障害の切り分けです。
ハードディスク自体に問題があるのか、それとも単にソフトウェア上の問題なのか。

今でも、直接お会いしたことのある人に限って、パソコンの修理サポートを行っていますが、
最初にハードディスクの状態を確認して、お客さんに今後の対応について話さないと、
作業が先に進みません。
こういう判断は、遅れれば遅れるほど、後でモメます。

重要なのは、「何が悪くてどうすべきなのか」という判断。
ハードディスクの状態が悪いのに、リカバリだけしてお渡ししたりすると、
その後目も当てられないことになりますので。

ハードディスクから明らかに異音がしたり、逆にまったく動作音がしなければ、
ハードディスクの故障だとわかりやすいです。
でも実際には、ハードディスクは一応動いてはいても、動作が不安定なことが少なくありません。
中途半端に動くというか。

これは、ハードディスクに機械的な動作をする部分が多いため、
壊れ方としても、徐々に、連続的に壊れていくことが多いからです。
このような破損状況は、外観からではわかりません。
結局、ハードディスクはパソコンで使用するので、
パソコンを使ってハードディスクを診断することになります。

ハードディスクの動作音を聞く

とはいえ、まず得られる情報は、ハードディスクの動作音です。
耳をすませば、ハードディスクのモーターとヘッドの動作音は、聞き取ることができます。

特に、ハードディスクから周期的に異音がすることがあります
モーターがスピンアップを繰り返したり、ヘッドがカッコンカッコンいい続けたり。

これらの場合は、ハードディスクの使用をただちにやめてください
ハードディスクの接続を外してください。
その状態からでは、何もすることができません。
ハードディスクの修理が必要です。

BIOSが認識しているかどうか

BIOSがハードディスクを認識していることが重要です。
パソコンを使ってハードディスクを診断するにも、
BIOSがハードディスクを認識できなければ、それ以上何もできません

確認事項としては、BIOSの設定画面に、対象のハードディスクが表示されているかどうか
要は、ハードディスクのコントローラを、マザーボードのBIOSがちゃんと認識しているかどうかです。
つまり、ハードディスクのコントローラが機能していることを確認します。

外付けハードディスクでUSB接続しているのであれば、分解して内蔵ハードディスクを取り出し、
SATAでマザーボードと接続して動作確認してください。
ここで調べたいのは、内蔵ハードディスクのコントローラであって、
USBのコントローラではありませんので。

SMART情報の確認

ハードディスク内部の状況を調べるには、SMART情報を確認すればいいです。
ハードディスクのコントローラが把握している現状を知ることができます。

SMART情報

ハードディスク/SSDのSMART情報を確認する

ハードディスクは、不安定な壊れ方をしていくことが多いですが、
SMART情報を確認することで、具体的にどこに問題があるのかを理解できます。
ハードディスクの異常は外からではわかりにくいので、
SMART情報はかなり有力な手がかりになります。

特に、ハードディスクを不安定にする原因として、不良セクタの存在が挙げられます。
不良セクタについても、SMART情報と関連があり、その内容から判断することができます。

SMART情報と不良セクタ

不良セクタが多数存在するハードディスクの継続使用は、避けるべきです。
データが失われる可能性が高いので。

なお、SMART情報を確認するだけでは、ハードディスクにそれほど負荷はかかりません
あくまでも、ハードディスクが管理している情報を取得するだけです。

ハードディスクをスキャンする

SMART情報に問題がなければ、ハードディスクは大丈夫、とはいえません。
なぜなら、SMART情報は現在の状況を示しているにすぎないからです。
実際にハードディスクをスキャンして、動作テストをしているわけではありません。
アクセスしていない領域に不良セクタがあった場合、SMART情報に異常は現れません。
実際問題として、SMART情報で大半のことは判別できるのですが。

たとえば、お客さんから修理品としてお預かりしたハードディスクを診断する場合、
まずはSMART情報から得られた結果をもとにお話しします。
その後、ハードディスクを使い続ける場合は、
お客さんにお渡しする前に、必ずハードディスクの読み出しチェックを行うようにしています。
再修理が発生しないように。
再修理は、お互いにとってマイナスでしかないので。

ただし、ハードディスクのスキャンは負荷の高い作業です。
動作が不安定なハードディスクに対して、いきなり実行するのは避けたほうがいいです。
まずはSMART情報を確認し、これまでの状況とあわせて総合的に判断したうえで、
最終確認としてハードディスクのスキャンを行うべきと思います。

「HDAT2」を使う

ハードディスク診断ツールは、一般的には各ハードディスクメーカーから提供されています。
でも、ハードディスクメーカーから提供されるハードディスク診断ツールは、
そのメーカーのハードディスクにしか対応してなかったり、自由度が低いです。
そこで、汎用性の高いハードディスク診断ツールとして、ここでは「HDAT2」を紹介します。

HDAT2

「HDAT2」の使い方

「HDAT2」の特徴は、ハードディスクを直接操作できることです。
ATAコマンドをそのまま送れます。
このことで、ハードディスクの全域にわたって、「READ」や「VERIFY」を実行できます。

スキャンの過程で不良セクタが検出されれば、エラーとして表示されますし、
その結果は、先のSMART情報にも反映されます。

「chkdsk」の実行

「HDAT2」を使っておけば間違いないとは思いますが、使用するまでのハードルが若干高いのは事実です。
ハードディスクをスキャンするには他にも方法がありまして、
中でも手軽なのは、間違いなく「chkdsk」でしょう。

chkdsk

「chkdsk」と修復オプション

ただし、「chkdsk」はハードディスクの診断ツールではなく、
ファイルシステムをチェックするためのプログラムです。
従って、スキャンの対象もディスクではなくドライブです。
また、実行時のオプションによっては、ドライブの全領域をスキャンしません。
むしろ、領域全体をスキャンすることのほうがまれです。

このため、ハードディスクの診断が目的で「chkdsk」を用いる場合は、
オプションに注意して実行する必要があります。

chkdsk e: /r

具体的には、「/r」のオプションを指定して実行します。

厳密に言うと、すでにファイルシステムに登録されている不良クラスタはスキャンされませんが、
実用上はそれで問題ありません。
スキャンの過程で不良セクタが検出されると、
不良セクタを含む不良クラスタは、ファイルシステム上使われなくなります。
このことで、以後このドライブを比較的安全な状態で使い続けることができます。
また、ハードディスク自体のはたらきによって、
検出された不良セクタは、SMART情報にも登録されます。

ただし、SMART情報やATAコマンドのようにハードディスクに直接関係するものと違って、
ファイルシステムはより上位の概念にあたります。
従って、「chkdsk」でハードディスクの状態の詳細はわかりません

ハードディスクの本質的な問題を、「chkdsk」ですべて回避できるわけではありませんので、
ご注意ください。
でも一応、「chkdsk」で簡易的にハードディスクの診断はできる、ということです。
ハードディスクをスキャンすることで不良セクタを検出しますし、その対策も自動的に行います。