NAV_MENU
賽は投げられた。人事尽くして天命待つと言うか、転がりだした物は止められないというか。まぁ、ちょとは覚悟しとけよ。
基本的に毎日更新。出来なかったときは遡ってやります。多分。きっと。出来たら良いな

物理的に壊れたHDDからデータを復旧する【上級者向け】

これは、2012年ごろに某所で公開されていたものですが
某所もつながらなくなり、原稿料ももらってなかった(笑)ので
元原稿も見つかったことなので、そちらからやや加筆修正しての再公開になります。

壊れたHDDからデータを取り出す方法です

当時の日記はこのあたり
HDD壊れた
HDD復旧1台は
HDDサルベージ失敗
HDDデータサルベージ
続HDDデータサルベージ
続々HDDデータサルベージ
続々々HDDデータサルベージ



最初に


本稿は、きわめて上級者向けの内容になっております。
自作パソコンを組み立てた事がある、パソコンのパーツを交換した事がある程度の方は対象としておりません。
最低でも、ハンダゴテを握った事がある、電気回路に対してある程度の知識がある、HDDの構造と記録原理等を理解されている方が対象です。
そういうわけもありますので、基本的に細かい説明はありません。
本稿はあくまで、成功例があるという例の提示に過ぎませんので、本稿を元に作業された結果については、筆者は一切の責を負いません。悪しからず。
ただ、下記の考え方に納得できるのであれば、運が良ければデータを取り戻せるかもしれません。

  • すでにデータを失ったから、もう失うものは無い

  • すでに最悪の状況だから、これ以上悪くなることは無い

  • 恋人は排他的に占有しない限り、それは失恋したも同然」って考えの人でもOK :-p

  • 「BLOGのネタが出来た!」lol


上記の考え方に納得できない人は(納得できない人は、自分で何をやっても後悔します。他人に任せても、失敗に終わった場合、任せた事を後悔すると思いますが、他人に責任転嫁に出来るのでオススメ)、何もせずにデータサルベージ会社へご依頼ください。

fig-1

概要


モータがスピンアップしない壊れたHDDから、データをサルベージするのが目的。
HDDがOSから認識できる人は、この記事は役に立ちません。
電源事故によりHDDの基板焼損、HDDのモータが回転しない(HDDから回転音が聞こえない)、重度の物理障害の発生
ターゲットHDDは、WDC WD10EADS。
このモデル、一時期バカ売れしてたので、中古市場にも潤沢に出回っていて、同一ロットの入手が比較的簡単。
今回の作業環境、および、破損したHDDはFreeBSD8.2R + ZFS の環境で利用していたものである。
データサルベージの項では、コマンドやデバイス名がLinux等お使いの環境では異なる事があるので、注意されたい

準備するもの



  • HDDを分解するのに必要なドライバ、トルクス(ヘックスローブ)って名称のものが一般的
    (3.5インチHDDの場合 T-8,T-6くらいがあれば事足りると思うが、T-7やT-5が使われている事も)

  • 壊れたデータ入りのHDD 1台 HDD_X

  • HDD_Xと同一モデルのHDD (製造年月日、生産日が同じもの) 1台 HDD_A

  • HDD_Xと同一モデルのHDD (製造年月日が異なっても構わない) 1台 HDD_B データサルベージ先 壊れたHDDより大容量だと、モデル等は問わないが、意味がわかってないと、同一モデル手配するほうが無難

  • HDD_Xと同一モデル(または同一シリーズ)のHDD (壊れていても構わない) 1台 HDD_C 構造チェック用なので慣れていれば不要

  • 壊れたHDD以上に、十分な空き容量のあるローカルストレージ

  • 適当なUNIXライク環境(KNNOPIX等でもたぶんOK)

  • エアブロア等塵を吹き飛ばす道具、エアスプレーでもOK

  • カッターナイフ

  • マジックか、ラベル等、HDDを識別しやすくするためのもの

  • テスター 無くてもいいけどあったほうが原因究明は楽になるかも

  • ハンダゴテ 弱電用のリーク電流の少ないもの。fig-2ではガス触媒式を用意。 今回は不要だった。

  • ピンセット、ドライバ等工具類、非磁性のものだとベター



fig-2

手順


最初に


1.HDDにラベリングする。同一モデルばかりなので、混ざると厄介。特にHDD_XとHDD_Aは混ざると区別付かなくなるので注意。区別付くなら不要
2.作業前にHDD_Cを使って、手順、および構造の確認
やったことのある人は省略可、ただしモデル毎に仕様(プラッタ枚数等)が異なる場合があるので、確認のためしておいたほうがいいかも。(本モデルも、前期ロットは3枚プラッタ、後期は2枚プラッタだった)
状況確認

2. 壊れたHDDを分解するが、とりあえず、基板をはずして、目視で状況を確認する

2-1. 今回電源事故なので、テスターで当たりをつける。電源系でショートモードで問題が起きていたら、
デカップリング用のチップコンデンサ、回路保護用のダイオードを外すだけで動くかもしれない。
参考画像(fig-3)
これはHGSTのドライブ、5Vラインのダイオードがショートモードで焼けていたので、除去して通電してデータ回収。中央下部の空ランドが除去したダイオード跡

fig-3
でも今回はモータコントロール用と思わしき、ICチップが焼けていた(fig-4)。
コントローラが焼けたのみで、HDDのモータやヘッドのほうは無事かもしれない(希望的観測)。

fig-4
ここまで確認してから、部材を集めましょう。

修理 その1 基板交換



物理的な部分は生きているのだから、制御回路だけ取り替えれば、いけるんじゃない? 当然、焼けたICチップを交換すると言う方法もあるにはあるが、今回は、他の部分に影響が出ている事を鑑み、基板ごと交換することとした。
(注:一部のHDDは、基板スワップで起動すると、データに致命的な問題が起きる可能性があります。)

3. HDD_A から、基板を取り外す。
3-1. HDD_Xから基板を取り外す
3-2. EEPROMが乗っている場合はHDD_Aの基板にHDD_XからEEPROMを取り外し取り替える。(基板上のファームウェアとプラッタ上の情報が紐付けられている場合があるため)(fig-4 中央ネジ穴の左にある、8つのパターンがEEPROMのパターンぽいが、基板上の記号だとオペアンプらしい。このモデルはEEPROMがもともと付いてないようなので、そのまま交換)
3-3. HDD_XにHDD_Aから取り外した基板を取り付ける
3-4.通電してスピンアップして、なおかつ、PCに接続し、BIOS等で正常に認識すれば、項目「データサルベージ」へ
3-5. EEPROMを交換した場合は、元に戻す
3-6. 基板も元に戻す

修理その2 プラッタ交換



モータがスピンアップしない場合は、モータもやられている可能性が高いので、
スピンドルモータの交換だが、今回は基板もやられているので、プラッタを交換することにする
HDDは、塵を嫌うので、クリーンボックスやクリーンルームがあれば、利用することが望ましい。
本当は、普通の部屋で開けてはならない。でも壊れたHDDなので今回は問題なし。運が良ければデータくらいは吸い出せます。たぶんね。
HDD_Xのデータ入りのプラッタの埃への暴露時間が短くなるので、交換先のHDD_Aから先に作業すると良いかもね

4-1. HDDを蓋を開けるので、ネジの位置を確認し、密閉用のシールやラベルを剥がすか、切り取る(fig-5,fig-6)。

fig-5

fig-6

4-2. ネジを緩める。パッキン用のゴムが付いていて、密着しているので、ネジをとっても外れないことが多いので、確実にネジがないことを確認後、マイナスドライバ等でこじ開ける(fig-7)。

fig-7

4-3.ボイスコイルモータ(VCM)の上部磁石をはずす(fig-8,9)

fig-8

fig-9

4-4.プラッタの間にある整流板?(WD以外では見たことが無い)のネジを緩める。(fig-10)

fig-10

4-5.ヘッド保護のために名刺や画用紙の切れ端を折りたたんで隙間を保持する。(fig-11)

fig-11

4-6.ヘッドの稼働域を制限しているピンをはずす。ヘッドが自由に動くようになるので、ランプエリアからヘッドを退避(fig-12)

fig-12

4-7.ランプエリアを外す(fig-13)

fig-13

4-8.スピンドルからプラッタを外す為に、スピンドルのネジを抜く(fig-14)

fig-14

4-9.プラッタを固定していた部品を外す(fig-15)

fig-15

4-10. プラッタ類を完全に取り去る。 この際、スペーサの位置関係等を把握しておくこと。注:ここまで終わったら、外した蓋をとりあえず被せておきましょう。(fig-16,17,18,19,20)(ちなみにfig-16 は下部に指紋が付いてしまってますが、これは失敗です。指紋つけた場合はアセトンで洗えばいいかも。)

fig-16

fig-17

fig-18

fig-19

fig-20

4-11. HDD_Xでも上記の作業を行い、プラッタを取り出し、上下、裏表、順番が同じようになるように(プラッタの角度方向の同期は取る必要は無いと思う)、プラッタを取り去ったHDD_Aに組み付ける。この際プラッタのヘッド接触エリアには絶対に触れないこと、持つときは側面を持つこと。
この際、1枚入れるたびに、埃をブロア等で飛ばすと良い

4-12.逆の手順で、組みつけていく。ネジは対角で適当なトルクで締めましょう。(fig-21)

fig-21

4-13.ヘッドをランプに載せた後、ヘッドの位置を制限するピンを差し込む(fig-22)

fig-22

4-14.この後VCMの磁石を乗せ、蓋を閉めるが、蓋を閉める前に、一度全体をブローしておくと良い。左上のエアフィルタも付け忘れないように。写真では付け忘れた(fig-23)

fig-23

4-15.蓋を載せ、ネジを締める(fig-24)

fig-24

とりあえず、これでプラッタ交換作業は完了

データサルベージ


5-1. サルベージ元のHDD_X(プラッタ交換している場合はHDD_A’)と十分な空きスペースを持つHDDを接続し、HDDのディスクイメージを作成する
(直接操作しないのは、基板スワップや、プラッタ交換をしている以上、どんな不具合が後々発生するかわからないため。データコピーの間だけ使えればいい程度でしかない)

5-2. ddコマンドか、不良ブロックがある可能性があるのであれば、dd_rescue等を使う良い。ここでは、 dd_rescueを使う(なお、/dev/ad4はターゲットのHDDをつないだブロックデバイス)
# dd_rescue -A /dev/ad4 /mount/data/rescue.img

(-A オプションは、不良ブロックで読み取れなかったブロックを'0x00'でパディングするオプション)

5-3. 読み込みする。時間がかかるので、暫し休憩。1TBで最短4時間程度

5-4.完了したら、元のHDDを外し、HDD_Bを接続し、イメージを書き戻す
# dd_rescue -A /mount/data/rescue.img /dev/ad4


5-5. 書き戻すにも時間がかかるので、再び暫し休憩。
(注:判る人には判ると思うが、Disk to Diskで作業すれば、イメージの作成は省略可能である。ただし、後々の事を考えて、作成しておくほうが無難)

5-6. 物理的なサルベージ完了
物理的には問題はない状況なので、5-2の作業時点で不良ブロックが検出されていなければ、HDD_Xを利用していた読み書きできるOSにHDD_B接続すれば問題なく利用できるはずである。
この後の問題は、論理障害となるため、fsckやchkdsk等を駆使して、データを回収することになる。
5-2で不良ブロックが検出されている場合、一部のファイルの内容が破損している可能性があるため、重要なデータを回収し、中身をチェックしたほうが良い
今回は、物理的に壊れただけであるので、論理障害については発生してないので、本稿はここにて終了

追記


吸い出したイメージから復元したHDDではなぜかマウントできなかった(最終セクタあたりのメタデータのコピーに失敗したのかもしれない)ので、
私はプラッタを交換したHDDをそのままマウントしたが、イメージコピー2回と直接のデータ回収作業で約60時間程度で、HDDは壊れた事を記載しておく。
手元に残ったのは、一部メタデータ不足でマウントできないHDDイメージと、直接吸い出した、HDDデータ全体の40%である。
HDDイメージをマウントできればほぼ100%回収できたと想像されるので、少し残念な結果となったが、初めて(かつ、クリーンボックス外)の作業としては、重要と思わしきデータはほぼ救出できたので、結果には満足している。