ある日突然認識しなくなった外付けHDDを復旧する

USBで接続した外付けHDDが、ある日突然認識しなくなり「フォーマットする必要があります」と表示されました。

フォーマットする必要があります

ごくまれに発生する症状なのですが、ディスクの管理画面で確認すると、パーティション情報が「RAW」もしくは「未割り当て」と表示されます。

パーティション情報がRAW

でも、この症状の大半は、HDDが壊れた訳ではなく、パーティション情報やMBR情報(ディスクの中のデータ構造)が破損してしまっただけで、データそのものは無事なことが多いのです。

そこで、パーティション情報を修復し、復旧するまでの手順をメモメモ。

まずは復旧するためのツールを用意

データ復旧ツールというと、様々なメーカーから多種多様なツールが出ていますが、今回はフリーで使える強力なツールを使用してみます。

ツールの名前は「TestDisk」。あっさりした名前ですね(失礼!)

以下のページからダウンロードできます。

ダウンロードしたZIPファイルを展開し、testdisk_win.exeを実行してTestDiskを起動します。

復旧までの手順

TestDiskを使用して復旧するまでの手順です。

TestDiskを起動・ログ選択

TestDiskを起動すると、以下のようなウィンドウが開きます。

TestDiskを起動したところ

TestDiskを使用するにあたり、ログを新しく作成するか(=Create)、ログが存在する場合は追記するか(=Append)、ログを作成しないか(=No Log)を選択できます。

特にログを作成する必要はないので「No Log」にカーソルを合わせてEnter。

ディスクの選択

続いて表示される画面は、今回修復するディスクがどれなのかを選択する画面。

修復したいディスクを選択する画面

ここでは、ディスクの管理画面で「RAW」または「未割り当て」と表示されてしまっていたディスクを選択することになります。

…が、TestDiskで表示されるディスク情報には、ディスク番号やドライブレターが表示されないので、ディスク容量や名称(メーカー名、機種名など)で判断するしかありません。

今回はI/OデータのポータブルHDDなので、上から3番目のディスクを選択して「Proceed」。

パーティションテーブルの種類

修復するディスクのパーティションテーブルの種類を選択します。

パーティションテーブルの種類を選択する画面

いろいろ種類がありますが、Windowsの場合は「Intel」がほとんどでしょうか。2TB以上のパーティションがある場合は「EFI GPT」を使用していると思われます。

間違えて選択してしまっても、見つからないよ!というエラーが表示されるだけなので、どのタイプなのか分からない場合は、とりあえず上から順番に選んでみましょう。

ディスクに対して行う処理の選択

ディスクに対して、何をしたいかを選択します。

ディスクに対して行う処理の選択画面

行えることはいくつもありますが、通常は「Analyse(パーティション情報の解析・修復)」か「Advanced(ブートセクタ情報の解析・修復)」になると思われます。他の項目は上級者向けになりますので、知識のある方、分かる方のみご使用ください。

まずはパーティションの復元を試みたいので「Analyse」を選択します。

パーティションの検索

パーティションをQuick Searchで検索します。

パーティションのクイック検索画面

同じ内容のパーティション情報が2つ表示されていて、ブータブルパーティション(起動用パーティション)がないよ、と表示されています。

起動用のディスクではないですし、パーティションもひとつしか作成していないので、表示されている内容に間違いはなさそうですが、念のためクイック検索してみます。

検索には時間がかかりますので、他の作業でもしながらのんびり待ちましょう。約1TBの外付けHDDで、クイック検索にかかった時間は3時間ほど。

ちなみに、パーティション情報が読み取れない場合は「No partition is bootable」とだけ、表示されるようです。

パーティションの確認

長い長いクイック検索が終わり、結果が表示されました。

クイック検索の結果画面

ん?本来は2TBの容量があるのに、1TBしかないよ!設定を確認して!と表示されています。1TBのポータブルHDDを買ったけど、本来中身は2TBある、ということでしょうか…。

そして、パーティションは回復できません、って言われたけど…これは「回復するパーティションは無いよ」ってことでしょうか。

とりあえず「Continue」。

次の画面はパーティション情報です。緑色で表示されているので、パーティション構造に問題はないようです。(問題があると緑ではなく白で表示される)

パーティション情報の確認画面

パーティションの左側に「*」がついていますが、これはPrimary bootable、つまりブート可能なプライマリパーティション。カーソルキー左右で変更することができ、「P」が通常のプライマリパーティション(起動用ではない)、「L」が論理ドライブ、「E」が拡張パーティション、「D」は削除する、という意味のようです。

この状態で、キーボードの「A」を押すとパーティションの追加、「L」を押すとバックアップの読み込み、「T」を押すと種類の変更、「P」を押すとパーティションの中身をリスト表示できます。

とりあえず「P」を押して、パーティションの中身を確認してみます。

パーティションの中身を一覧表示

フォルダやファイルが確認できれば、データが無事残っている、ということになりますね!

キーボードの「Q」を押して、前の画面に戻ります。

パーティションの復元

無事中身が確認できたので、いよいよパーティションの復元です。戻った画面で「Enter」を押して、次へ進みます。

パーティション復元画面へ

もしパーティションやファイルが確認できていない場合は、ここで「Deeper Search」でさらに詳細なスキャンを行うことになります。

今回は確認ができたので、カーソルキーの左右で「Write」を選択し、Enterキーを押してパーティション情報を書き込みます。

パーティション情報書込の最終確認

本当にいいの?もちろん「Y」です!

パーティション情報書込結果

ブートセクタ異常!
バックアップブートセクタ異常!
セクタが同一ではありません!
データにアクセスするためには、パーティションが起動用じゃなくても、有効なNTFSブートセクタが必要です!(で合ってるかな?)

…だそうです。

「Rebuild BS」でブートセクタをリビルド(再構築)してみます。

ブートセクタの再構築

「Write」で書き込みます。

ブートセクタ再構築の最終確認

本当にいいの?もちろん「Y」ですよ。

ブートセクタ再構築結果

ブートセクタOK!
バックアップブートセクタOK!
セクタは同一です!

…OKですね。「Quit」でメニューに戻りましょう。

再起動を促す画面

「変更を有効にするため再起動が必要です」とのこと。USBの外付けHDDなので、USBの抜き差しでいけるかな?

USBの抜き差しで復旧を確認

とりあえずTestDiskを終了し、USBの抜き差しをしてみました。

USB抜き差しで認識OK

無事に認識しました。作業完了です!

お疲れ様でした!

初稿:2022年2月1日