データ復旧のプロに聞く ストレージ運用のコツ
イマドキのHDDの復旧方法。制御と対話、そして復元率とは?
2020年2月28日 06:00
近年の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に対してどのように記録していったのかや、ユーザーにとってもっとも必要なデータを運良く除外したヘッドが担当していなかったなどの確率に依存します。
動画ファイルのようにファイルサイズが大きくなると単一データがすべての磁気ヘッドを使って連続で記録していく傾向にあり破損しやすいのですが、ドキュメントや写真などの一定サイズのデータは1本のヘッドを除外しても破損の影響を受けにくくなります。
クリーンルームで大掛かりな作業を行なわなくても、このような「HDDとの対話」による作業で先に復元を希望するデータが復元可能だった場合、作業コストも大幅に削減でき、お客様の経済的負担も少なくできるのです。
当然、除外したヘッドが担当したデータもあるはずですが、そこに記録されていたデータが必要なものかどうかにもよると思います。
過去のデータ復旧の経験ですが、4本のヘッドで構成されるHDDで、プラッタの損傷が酷くヘッドが1本しか使えなかった障害でもお客様が望むデータのほとんどが復元できたケースもあれば、すべてのヘッドを使って可能なかぎりすべての磁気情報を抽出しても、お客様が望む肝心なデータだけが破損していたこともありました。これらはすべて作業後の結果でしかありません。
復元率を謳う業者が信⽤できないのはなぜか?
復元率というのはデータ復旧作業後の結果、つまり復元データを受け取ったお客様のみが判断できる内容につき、私たちで判断することではありませんので、経験豊富な会社ほど復元率について事前に語ったりWebサイト上で表記したりしません。
もしデータトラブルでデータ復旧会社を探すときには、「復元率を表示していない会社」を選ぶことがトラブルに巻き込まれないポイントとして参考にしてください。
また当社も加盟しているDRAJ一般社団法人日本データ復旧協会の会員企業各社へ相談するのもおすすめです。
大事なデータであればこそ自分でいろいろ試すより、まずは専門のデータ復旧サービスに依頼することが賢明なのですが、このようなことにならないように日々のバックアップが重要です。
前回と合わせて今回のお話で、HDDの消耗品としての特性をご理解いただけたと思いますが、大容量HDD時代に入り、人によっては使い切れない容量となる場合もあります。
ですが、こういう時代だからこそ大容量の特性を活かし、重複してもいいのでデータを選別したりせず、思い切って全部放り込めるHDDを数台用意しておくことをおすすめします。
1台のHDDやNASに集中管理もいいのですが、最近の災害ではこの保管方法が逆に大きな被害となっているケースもあり、セキュリティなど諸事情あるとは思いますが、大容量HDDで同じデータを複数分散して保存することも、大事なデータを守る上で重要なことになってきています。
ここまでHDDに特化して、HDDの基本的な構造を交えながらデータ復旧作業ではどのようなことを行なっているのかを話しました。今回は語れなかったSMRなどの最新HDDのデータ復旧特性やSSDなどのメモリストレージのデータ復旧については、次の機会に説明したいと思います。
当社ホームページやSNS(Twitter、Facebook)では、データ復旧やストレージに関する情報も配信していますので、ご興味がある方は是非ご覧ください。