費用をかけずに故障した10数年分の写真が入っているハードディスクを復旧

2023-12-29

壊れたのは私ではありません、知り合いから突然「ハードディスクが壊れたみたいなんだけど、何とかできない?」と頼まれました。

話を聞いて内容を整理

  • ずっと以前から使っている外付けハードディスクに写真を保存している
  • 先日、久しぶりに写真を見返そうと思ってPCに接続した
  • その時は普通に使えて写真も閲覧できた
  • そのままPCはスリープ、次の日にはハードディスクが認識されなくなっていた
  • 電源ランプは点いている、かすかなモーター音はあるが明らかな異音はしない

…話を聞く限りでは論理障害のようですが、ハードディスク自体が古く、ポータブルで持ち運んでいたらしいので物理障害の可能性も0では無いかも、です。

正直あまり触れたくはありませんが10年以上前からの写真が無くなる辛さもわかるので、諦め前提でできる範囲なら試してみますよ、となりました。

ついでに、頻度も少ないので復旧作業の手順を記録して残しておくことにしました。

手順

1番可能性の高い原因は論理障害ですが、軽い物理障害もあるかもと言うことで、基本的な復旧作業だけを試してみます。

  1. 元のポータブルハードディスクのトラック情報をイメージファイルにコピー
  2. イメージファイルを新しいハードディスクにコピー
  3. フォーマット情報の確認
  4. 復旧

とは言え、これで駄目なら業者案件になるので費用も高額になると思われるので、その場合は諦める事も考慮に入れてもらいました。

事前準備

壊れたHDDの確認

一般的に販売されているポータブルの外付けハードディスクです。容量が320GBなので、使っているPCの空き容量ではイメージファイルの保存ができませんでした。

気になる点としては、販売中止が2011年だったので少なくとも12年は使われているのかな?と。

データ移行用ハードディスクの購入

1.2.の作業に新しいハードディスクが必要になるため、データ移行に必要なハードディスクやSSDを準備します。

今回、SSDの方が安かったからとの事で500GBのSSDを用意してもらいました。

Linuxデバイスの用意

Windowsでハードディスク復旧用のソフトも販売されていますが、基本的な動作はLinuxのコマンドと同じのためLinuxで作業します。

WSLでUbuntuはインストールしていますが、物理デバイスを扱うのは何かと面倒なので(知識が少ない)ネイティブLinuxのPCを使います。

今回は自宅で使っているUbuntu Desktopのノートパソコンを使いました。復旧に使うddrescueは事前にインストールしておきます。

$ sudo apt install gddrescue

実際の作業

Windowsに接続して確認

HDDを接続。電源ランプは点灯してディスクが回っている雰囲気はあります。ですが、アクセスランプは何も反応せず、やはり外部ドライブとしては認識されていないようです。

Cドライブを右クリックして「管理」ー「ディスクの管理」から状況を確認。

接続は認識されているようです。ここでディスクを初期化するか聞かれましたがもちろん、絶対に初期化してはいけません!

Linux側で確認とddrescue

Ubuntuが動作するPCに接続してみますが、やはりマウントされません。

fdisk -lで確認してもWindowsでの確認と変わりませんが、この後のddrescueでデバイス情報が必要になるので控えておきます。

データ移行用のSSDも接続して、イメージファイルにコピーします。

$ sudo ddrescue "コピー元デバイス" "コピー先SSDのマウントポイント/ファイル名.img"

コピー元とコピー先を間違えると致命的なので気をつけてください。

で、7時間経過後にデータのコピーができました…。

最終的にエラーになったセクタが10カ所ほど検出されたので、これが原因でパーティション情報が消えたのかな?と思います。

ただ、根本的にエラーになった原因が存在するはずなので、このハードディスクは使わない方が良さそうです。

testdiskでパーティション情報の復旧

論理障害の場合、パーティションやフォーマット情報が復元できれば認識できる可能性は高いので、testdiskで試してみます。

今回は、起動ディスクとして使ったことがない古い外付けハードディスクと言う事がわかっていたのでフォーマット情報も想定しやすかったのですが、起動ディスクで使っていたハードディスクだとここまで簡単には進まなかった可能性はあります。

想定通りFATでフォーマット

パーティション情報を合わせるとファイルも確認できます

ハードディスクにパーティション情報書き込むと無事に認識できるようになりました。

感想

今回は、話を聞いた感じで論理障害だろうとの判断ができた事、外付けハードディスクでデータを保存していただけだった事もあってすんなり復旧できました。

ただ、システムディスクで使用していた場合や、何度もフォーマットしたディスクだと復旧の難易度も上がります。

そして正直、これで直らない場合の復旧はかなり難しいのが現実です。

と言う事で、バックアップが一番重要なのでクラウドストレージも利用しながら簡単にデータを保存してもらうように伝えて無事に終了しました。

途中、ディスクを暗号化していたらこんなに簡単に復旧できたのか?と気になったので、またディスクの暗号化について調べてまとめようと思います。