スポンサードリンク

イマドキのHDDの復旧方法。制御と対話、そして復元率とは?(Impress Watch)

スポンサーリンク
スポンサードリンク

イマドキのHDDの復旧方法。制御と対話、そして復元率とは?
[元記事]
本連載では、データ復旧事業者である株式会社くまなんピーシーネット 代表取締役の浦口康也氏が、HDDやSSDといったストレージデバイスについて、それにまつわる知識や役立つ情報など、現場のプロの視点からさまざまな解説を行ないます。■近年のHDDは基板を交換しても直らない【この記事に関する別の画像を見る】 前回は近年のHDDの復旧難易度の高さやその理由について説明しました(HDDの構造と消耗、高密度プラッタが復旧難易度を上げてしまう理由参照)。
 今回は、HDDに異常が出たとき、修理業者がつい交換を試みがちな基板の話からはじめます。まず、なぜ基板交換を試みるのでしょうか? それは昔のHDDはこれで直るものが多かったため、こうした経験情報が一般に残っているためです。しかし、現在は基板交換で直るモデルはほとんどありません。
 まずは、制御基板が最初に行なう重要な役割についてです。通電直後のHDDはまずスピンドルモーターが回転し、磁気ヘッドがプラッタ上で浮上できる回転ピッチまで達したところで、ヘッドスタックを駆動させる命令をコントローラが出します。
 ここでヘッドが最初に読みに行くのが、HDD固有の情報が書き込まれているサービスエリアで、基板側でヘッドをサービスエリアがある確実な位置に移動させないといけません。これは過去のHDDも同じなのですが、ここにも超高記録密度が関係してきます。
 複数本で構成されるヘッドスタックの場合、まっすぐ並んで見えてもじつは磁気ヘッド1本1本の組みつけ位置の中心が個々に異なります。これは見た目ではわからなくても、超高記録密度の世界では大きな差となります。
 前回の記事(HDDの構造と消耗、高密度プラッタが復旧難易度を上げてしまう理由)のヘッドローテーションで説明したLBA(論理空間)の順番においても、各プラッタでトラックの位置が両面で異なり、この状態で設定されたユニークな「個体固有の癖」も含めてHDDは製造されています。
 このことから同じ製造ラインで製造しても、厳密には個々のプラッタに記録されたトラックやサービスエリアの位置などがHDD個々で微妙に異なります。
 そして、この状態がHDD個体のデフォルトであり、この状態で超高記録密度のプラッタに記録されたサービスエリアにヘッドを確実に移動させるよう設定値が与えられています。サービスエリアは、HDDのリビジョンやファームウェアが変わるとその内容も情報量も異なってきます。
 仮にHDDラベルに記載されたモデルが同じでも製造工場や製造時期によってプラッタなら枚数や記録密度、ヘッドだと本数や採用パーツが異なる場合もあります。
 これが最近のHDDのほとんどが基板を交換しても改善しない理由となります。このように安易な基板交換を行なうと、異なる値を持った基板で異なるエリアにヘッドを移動させてしまい、ヘッドが制御を失い暴走するなど、著しくコンディションが悪化する原因となりますので、たとえ見た目で基板障害が明らかな場合においてもなるべくひかえるべきです。
 そして近年のHDDの基板障害の場合は、製造時に半導体に記録されたHDD個々のユニークな設定値を専用装置でドナー基板の半導体に継承した後、データ復旧作業を行なう必要があります。
 よって近年のHDDでは単に基板を交換するだけの作業はほとんど行なわれておらず、このような基板障害でも対応できる設備が充実したデータ復旧会社を探すことが重要となります。
 もし皆さんが基板を交換した後にデータ復旧サービスへ依頼する場合は、必ず元の基板に戻してから依頼してください。一般的に発生する障害と異なり、人為的な間違った処理によって発生する異常な挙動のため診断に無駄な時間を要する原因となり、経験に乏しい業者の場合だと間違った処理が行なわれてしまうリスクもあります。
■交換すれば直ると思われがちなヘッドの話
 PCを長く使っていれば、一度は「ヘッドクラッシュ」という言葉を耳にしたり、口にされたりした方がいるかと思います。多くは「カコン、カコン」といった特徴的な異音がする状態を指していますが、これも前回説明したプラッタの話と関係しています。
 磁気ヘッドはプラッタ上で浮いて読み書きしていますので、普通はプラッタと接触することはありません。もし何かのきっかけで軽く接触したとしても、プラッタ表層には潤滑層と呼ばれる軽い接触のダメージから双方を保護する処理が施され対処されています。
 しかし、HDD動作中の落下や転倒など保護処理では対処できない衝撃が与えられた場合は、ヘッド/プラッタともに大きなダメージを受けてしまい、磁気ヘッドが損壊してしまいます。これが本当のヘッドクラッシュで、このような被害のときにはプラッタのダメージも大きく、深刻な場合は磁性体が損傷し、記録層が剥離する場合もあります。
 また、磁気ヘッドの障害には別の原因もあります。それは消耗に起因する二次的な障害です。長期間使用し続けていたHDDは、軽い衝撃や急な停電などによってプラッタとの軽い接触から起こる磁気ヘッド自体の機能低下や、長期間の動作による消耗などがともない、プラッタそのものが障害を発しはじめます。
 障害発生プロセスとして例を挙げれば、プラッタの不良セクタなどでサーボ情報がダメージを受けた場合、ヘッドはそのエリアへのアクセス命令を受けたときに行き先を検知できず、迷走しリトライを繰り返すようになります。
 これが深刻になると暴走をはじめてストッパに当たり独特の異音を発するようになります。この異常動作を長く放置すると駆動パーツの過負荷や衝撃が続き、磁気ヘッドとプラッタの接触などに発展します。
 また別の例では、複数本で構成されるヘッドのうち1本だけの機能が低下することによってキャリブレーションができずに機能停止することもあります。
 キャリブレーションとは、HDDが通電後にサーボ情報を収集する動作です。ヘッドローテーションで説明した各ヘッドが担当するプラッタの論理空間を扱うためには、全ヘッドで各プラッタのサーボ情報を確認する必要があります。HDDはこの動作を経て、サービスエリアの情報からホストコンピュータに対して個体識別情報を返し、読み書きに備えます。これがOSやBIOS/UEFIで認識される状態です。
 このさいに、1本の磁気ヘッドがうまく機能しないだけでもHDD自体のシステム起動が失敗してしまい、ホスト側に認識されない状態になります。最近のHDDはキャリブレーションに失敗すると異音を発した後にスピンドルモーターが自動で停止するものがほとんどです。
 以上のように、HDDから異音がして認識されないという状態はこのようなプロセスになります。ここで、ヘッドスタックを交換すれば、データ復旧ができるようになるのかという話が出てきます。
■ほかのヘッドは正常であることを忘れてはいけない
 HDDが異音を発する状態になると一般の方では何もできなくなるため、ヘッドスタックを交換すればデータ復旧ができるかもしれないという考えが出てきます。
 ところが、複数あるヘッドの1本だけが機能低下を起こしただけなら、ほかの磁気ヘッドは問題ないことがほとんどなのです。この状態でヘッドスタックを交換することも手段としては問題ないのですが、人間の手術による体の負担と同じで、精密なHDDを分解するということは著しくコンディションを低下させることにもなる、ということを考慮しないといけません。
 もちろん、交換するヘッドスタックは必ず同一のものであるということが重要になりますが、これをほかのHDD個体から判断するには豊富な経験や知識が必要になります。また製造時に採用したパーツの特性による組み合わせの問題もあります。
 たとえば、製造初期は3枚のプラッタで6本のヘッドによって2TBだったものが、記録密度の異なるプラッタの採用によって5本、4本と少なくなって同じ容量を実現したHDDがまったく同じモデルとして存在したりします。この場合、開封後にヘッドスタックの見た目が異なりますので組み付ける以前に違うものと気づくかもしれません。
 では、見た目が完全に一致しているものでは大丈夫かというとそうでもありません。同じモデルでも採用されたプラッタやスピンドルモーターが異なる場合は、ヘッドスタックもそれらに合わせたパーツだったり設定が施されていたりします。これらは製造時に採用するパーツの組み合わせによるものなので、これでファームウェアも個々に異なるのです。
 また専用ツールがなければ組みつけ時のリスクも伴うと思います。たまに自分で分解していろいろ試してみたといった依頼をいただくことがありますが、組みつけ時に磁気ヘッドを変形させたことに気づかず通電してプラッタ表層全体に酷いダメージを与えてある場合があります。
 このような状態は、本来必要最小限の処理で解決できた可能性を自ら失わせてしまった残念な結果です。HDDは故障した家電品のように何かを交換して簡単に直るものではありませんので、安易な考えで分解するようなことは絶対避けるべきでしょう。
 本来正常だった磁気ヘッドが内部で機能低下を起こすわけですので、その過程においては別の原因があるはずです。これを事前に見極めないかぎり仮にうまくヘッドスタックを交換できたとしても、また同じ状態に戻るばかりか開封による二次的なコンディション悪化も起こりやすくなるばかりです。
 そこで私たちのようなプロのデータ復旧業者は、残りの正常な磁気ヘッドを使ったデータ復旧から行なえないかと試みます。
■HDDのデータ復旧は「HDDと対話」で
 普段私たちはOSやアプリケーション、ホストデバイスからHDDに対し、HDDの制御基板についているSATAなどのI/F(インターフェイス)を介して意識せず汎用的なコマンドだけを送り、HDDをHDDとして扱っています。これがPCや家庭用レコーダ、ゲーム機などでデータを保存する媒体として扱うことができるHDDの汎用コマンドです。
 しかし当社のようなデータ復旧会社では、各HDDメーカー固有の開発言語に近いコマンド制御を行ないます。
 たとえば、図1のように複数本で構成されるヘッドのうち1本が障害を起こし、異音を発生していたとしても、「損傷したナンバーのヘッドのキャリブレーションは終了済み」といった代替コマンドを送り、通電後のキャリブレーションを成功させます。この後に、損傷ヘッドが担当していたLBA(論理空間)を計算し、その空間のセクタだけを除外する命令で磁気情報の抽出作業を行ないます。
 ここで1本のヘッドがなくなった状態でデータ復元作業をしても復元率が低くなるのではないかと思われるでしょうが、ここからは確率の話になるのです。
 たとえば、内部に6本のヘッドを持つヘッドスタックが組み込まれた1TBのHDDであれば、ヘッド1本あたりが担当する容量は物理総容量に対し6分の1の約17%になります。
 6本のヘッドのうち1本の磁気ヘッドが損傷した状態では、抽出できる磁気情報は1TB全体の約83%なので抽出できる磁気情報量は830GB程度です。では復元率も83%かと言うとそうではありません。
 図2を見るとわかるように、除外したヘッドが担当していた領域がOS上の大半の空きエリアだった場合は話が変わってきます。
 このように、HDDを分解することなく希望とするデータが復元できるのも、OSやホスト側がHDDに対してどのように記録していった

スポンサードリンク
スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク