GUiLZ Project Personal & Experimental Blog

■ [PC] 壊れたHDDからデータを救出する

少し前に引き受けたノートPCのHDDデータ救出と、今回引き受けたデータ救出事例を元にメモ。だらだら書くとさらに長くなるので、一応簡潔にまとめてみたつもり。

■事例 1

  • 症状

40GBのHDD。BIOSから認識はするが、OSが起動しない。ブート時にXPの起動モードを選択する画面は表示されるところまではいくが(即ちブートセクタは無事)、どの選択肢を選んでもうんともすんとも言わない。

動作確認するために、SLAX及びBart’s PEで起動テストを行うが起動しない。WindowsにUSB変換アダプタを使ってHDDのみを接続するも、認識中に固まる。

  • 分析

バッドセクタが大量にあると考えられたので、データリカバリーソフトによる復旧の必要がある。

BIOS認識はしているので、基板交換などのハード的な処置は不要と思われる。

  • 対処

HDDをノートPCに再接続し、ノートPC上で作業を行うこととした。

まずはフロッピー起動のNorton Ghostでイメージを取ろうとしたものの、エラーを無視するオプションを付けても途中で落ちてバックアップが取れない。

Knoppix 5.01のブートは成功したので、USB変換アダプタを使ってバックアップ用HDDを接続。ITmediaのPhotoRecに関する情報 を参考に、データを抽出。無事にデータリカバリーを行うことができた。

これで全て終わったように見えたが、PhotoRecは救出したファイル名が連番の数字になってしまう&自動生成されるディレクトリにファイルが生成されるため、今回のようにHDD1台丸ごと救出した場合は、どのデータが必要なのか分からなくなってしまう。

幸いHDD自体はまだ動いてくれたため、dd_rescueを使ったデータリカバリを試すことにした。

  • 対処 2

KnoppixからRoot Shellを開き、対象となるドライブをアンマウントしてから、dd_rescueを使ってイメージを取る。

dd_rescue /dev/hda /dev/sda

このコマンドで、/dev/hdaの内容がUSB接続のバックアップHDDである/dev/sdaにコピーされる。

このバックアップHDDをWindowsマシンに装着し、R-Studio データレスキュー PRO を使ってデータ復元。かなりのデータを元のディレクトリ構造・元のファイル名のまま救出できた

  • 雑感

これだけ見ると簡単に終わったように見えるが、本格的なHDDのデータ救出は初めてだったため、かなり試行錯誤していたりする。最終的にデータ救出には1週間以上かかった。dd_rescueと R-Studio データレスキュー PRO によるデータリカバリだけで丸4日以上かかったように記憶しているが、既に数ヶ月前のことなのでちょっと記憶が曖昧。

dd_rescueによると、エラーセクタの総数は 53368 だった。主にシステム領域のみで、データ領域にはほとんど無かったのがデータ救出に幸いしたと思われる。

ちなみに、救出したデータの持ち主からのお礼の言葉などは未だにない。もう二度とやってやるか、ボケ。

■事例 2

  • 症状

40GBのHDD。BIOSから認識はするが、OSが起動しない。ブート画面も表示されない。

動作確認のため、Bart’s PEで起動テストを行うが起動しない。Knoppixは起動するものの、/dev/hdaとして認識されない。fdiskを行うと、

/dev/hda を開けません

というエラーメッセージが出る。

  • 分析

Knoppixのdmesgを読むと、0セクタから大量のエラーが出ており、ブートセクタはおろかパーティションテーブルも壊れていることが予想される。BIOSでは認識されていてもLinux上では認識されないので、dd_rescueもdevice not foundというエラーで終了してしまう。

またUSB変換アダプタとの相性か、外付けのバックアップ用HDDが認識しないため、ノートPCでの作業続行は難しい。デスクトップPCに直接接続して、データを抜き出す必要がある。

Linuxで認識しない以上、Windowsから直接 R-Studio データレスキュー PRO でデータを抜き出すか、他の手段でイメージバックアップを行う必要がある。

  • 対処

HDDをデスクトップPCに変換アダプタを用いてATAで接続し、作業を行うこととした。

Windows上で認識はしたので、R-Studio データレスキュー PRO で直接データを抜き出そうとした。しかし15時間ほど放置しても数万セクタほどしか進んでいなかったため、エラー総数が分からない現状では時間がかかりすぎるので中止。

事例 1のHDDリカバリ時にも大変参考にさせていただいた、

2004/01/22 三田(2) 「ディスクが BIOS から認識しなくても諦めるな!」

上記サイト様ではFreeBSDを使った復旧をされていたので、ダメ元で1CD BSDを使った復旧を試してみることにした。Knoppixではhdparmをいろいろ試してもHDDを認識してくれなかったためだ。

検索の結果、「FreeSBIE + ehci + dd_rescue」というリカバリに特化した1CD BSDがあったので、これを使うこととした。

このCDからだと、特に何もしなくても/dev/ad0(プライマリーマスターとして接続している)としてHDDを認識。dd_rescueでデータを抽出できた(現在実行中)。ちなみに約7時間程度で15GB程度のイメージ化に成功。エラーセクタは現在5800程度。先頭部分に大量にあったのと、15GB付近にもそれなりの数があるようだ。

  • 雑感

まだデータ救出までは終わっていないが、イメージ化後は R-Studio データレスキュー PRO でおそらくデータ救出可能と思われるので、仮にまとめておく。

FreeSBIE + ehci + dd_rescue」は、USB接続のHDDにデータをバックアップも出来るようになっているが、今回は相性のためかUSB接続のHDDにdd_rescueを行うとエラーが発生したため、全てのHDDをATA接続した。nForce 4チップ搭載PCということも影響しているかもしれない。

前回の場合も感じたが、2.5インチHDDに直接 R-Studio データレスキュー PRO のようなソフトを実行するより、3.5インチHDDに取ったイメージバックアップに対して行う方が速度が速いし、元のHDDを症状悪化させないという点でもいいだろう。当たり前の話というか、そうでなければわざわざみんなイメージバックアップを取るわけないけれど。

っていうか、相変わらず今回も赤の他人のデータ救出させられたうえ、タダ働きですかそうですか。次回からはごく親しい人間以外からは有料にしよう。電気代だってタダじゃねーんだぞ。1週間もAthlon X2マシン動かしたらさぁ。

  • 参考にさせていただいたサイト様

スポンサードリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

当サイトのコメント欄は承認制となっております。また、日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

スポンサードリンク

Twitter
利用中のサービス

GUiLZ Project では、以下のサービスを利用しています。


関連サイト
巡回先サイト様
アーカイブ