読み込めなくなったHDDをデータを消さずに復旧したい(未解決)その1
HDDを入れ替えたら読めなくなりました。
先に言っておくと、「この記事は解決してない」です。
作業の備忘録というか、調べながらやったことをメモしているだけ。
目次
環境
Windows11 Home
換装前
換装後
- 内臓HDD 8TB(Western Digital)←新しく買った
- 外付けHDD 1TB(Seagate)
- 外付けHDD 1TB(SAMSUNG)
何が起きたか
PC購入時はSeagateのHDDにOSが入っていたのだが、SSDを購入し、SeagateのHDDはデータ格納用に変えた。
時が経ち、SeagateのHDDの空きが少なくなってきたのでWestern Digitalの8TBのHDDを購入し、差し替えた。
これ。(アフィリエイト)
SeagateのHDDはUSBの外付けにした。 このディスク2というのがそれだ。見事に無効である。取り外してUSBの外付けにしただけでこの状態だ。
ちょっとした衝撃でハード故障したのだろうか。
やってみたこと
- 別のHDDに丸ごとクローン。
- Linuxにつなげてみる。
- TestDisk 7.2-WIPで調査。
別のHDDに丸ごとクローン
玄人志向のHDDスタンドで実施。特に止まることなくクローンは3時間ほどで完了し、同じように「無効」と認識されるHDDが2台できた。
スタンドはこれ。(アフィリエイト)
つまり、ハード故障ではないと判断。
HDDスタンドの説明書に、クローン中不良セクタがあったらエラーになると書かれていたので、不良セクタも無かったのだろう。
Linuxにつなげてみる。
これはやらなきゃよかった。
VMwareにRocky Linux9.0をインストールしてホスト(Windows11)につないでるHDDをそのままゲスト(Linux)に接続してみたが、Linuxから見えない。ntfs-3g関連を入れてLinuxから救い出そうとしたが失敗。
このせいでHDDに変なパーティションができてしまったと思われる。
TestDisk 7.2-WIPで調査。
というわけで本題。
HDDを何とかするソフトを探していると有償のがいくつかでてくるが、これはオープンソース。
以降はTestDiskを操作した記録。
1. ログは取るかい?
「つくる」「あるものに追加する」「いらない」の3択。
あったほうがいい。なぜなら画面に出力される以上の情報がログに出るからだ。
出力しても数百行程度のテキストなのでサイズも気にしなくていいし、何より少しでも情報が欲しい。
HDDの復旧で色々作業する場合、今までの作業は記録されていたほうがいい。
2. どのディスクを見るんだい?
接続されてるディスクが一覧で出るので該当するものを選ぶ。容量とデバイスの名前が出てるので見ればわかると思う。
3. 調査したいHDDのパーティションの種類はなんだい?
Windowsなら「Intel」か「EFI GPT」のどちらからしい。
選択肢の下に「Hint」として、TestDiskが検出したパーティションのタイプが出るので、それを選べばいいと思う。
今回は「EFI GPT」にした。
ちなみにデバイスマネージャーで該当のHDDの詳細を見ても「GPT」と書かれていたので合っているはず。
ここで「イベント」タブを見ると「デバイスの設定が移行されていません」と言われてる。
最初はこれ見て「内臓HDDを入れ替え前後で同じドライブ文字割り当てたから競合したのか?」と思ったがわからない。
エラーコード的な「0xC0000719 」でググると色んな症例が出てくるので、これで原因を特定するのは無理そうだ。
4. 何をしたいんだい?
「Analyse」を選ぶ。これと「Advance」以外の選択肢は上級者向けらしい。
すると次の画面で今のパーティション情報が出てくる。
check_part_gpt failed for partition 3 P MS Reserved 208896 239615 30720 [Microsoft reserved partition] Current partition structure: 1 P EFI System 2048 206847 204800 [EFI system partition] 2 P MS LDM MetaData 206848 208895 2048 [LDM metadata partition] No FAT, NTFS, ext2, JFS, Reiser, cramfs or XFS marker 3 P MS Reserved 208896 239615 30720 [Microsoft reserved partition] 3 P MS Reserved 208896 239615 30720 [Microsoft reserved partition] 4 P MS LDM Data 239616 1952499711 1952260096 [LDM data partition] 5 P Windows Recovery Env 1952499712 1953523711 1024000 [Basic data partition]
3が2つあるのは気になるけどとりあえず重なったりはしてなさそう。
5. 調べるかい?
まずは今のパーティション情報をバックアップした上で「Quick Search」だ。
これは簡易的にパーティションを検査してくれるメニューだそうだが、40時間くらいかかった。
TestDiskについて色々調べてたら、海外のサイトで「Quick Searchを選ぶとそのままDeeper Searchが実行されるよ」とかいう記述を見たが本当だろうか。
色々なサイトを見てるとQuick Searchですぐに結果出て、その後ちゃんと検査したかったらDeeper Searchしなよ、みたいな記述を見かけたので、Quick Searchにこんなに時間がかかるとは思わなかった。
6. 調べた結果が出たよ!
40時間くらいかかったQuick Searchの結果、見つかったパーティションが羅列される。Analyseで出た結果とまるで違う。 Linux filesysなんてのがあるのはLinuxにつなげたときにできてしまったのかもしれない。
余計なことしなければよかった。
ここでログを見ると各パーティションのもっと詳しい情報が出てるのでログも確認する。
開始位置とかサイズとかめちゃくちゃやんけ!っていうパーティションは多分ぶっ壊れてるので捨てよう。
この画面で「P」を押すとそのパーティションの中身が見れて、ファイルを他のドライブにコピーできたりするらしいが、自分の場合は次のメッセージが出て何も見れなかった。
Can't open filesystem. Filesystem seems damaged.
残念ながらTestDiskでファイルを取り出すことはできないようだ。
7. どのパーティションを選ぶ?
さて、正しい(と思われる)パーティションを選ぶのだが、Analyseの時にあったパーティションが出て無い。
このまま進めるとあるはずのパーティションを捨ててしまうことになる。
そこで「load backup」により、Analyseの時に保存したパーティション情報を読み込むと、Quick Searchで見つかったパーティションとバックアップしてあったパーティションが混ざったリストができる。
Disk \\.\PhysicalDrive2 - 1000 GB / 931 GiB - CHS 121601 255 63 Partition Start End Size in sectors D Unknown 2048 206847 204800 P EFI System 2048 206847 204800 [EFI System Partition] [SYSTEM] >P Unknown 206848 208895 2048 P Unknown 208896 239615 30720 D Unknown 239616 1952499711 1952260096 P MS Data 239616 1952499711 1952260096 D MS Data 25019059 25021938 2880 [NO NAME] D MS Data 121907091 121909970 2880 [NO NAME] D MS Data 122114143 365078622 242964480 D Linux filesys. data 1212047138 1218568156 6521019 [a~V 4) D MS Data 1951475713 1952499712 1024000 D Unknown 1952499712 1953523711 1024000 D MS Data 1952499712 1953523711 1024000 [Recovery tools]
混ざっているので、当然同じパーティションも並ぶ。
バックアップ(backup.log)には開始位置とサイズしか情報が無いので、Unknownで出てくる。
Unknownのパーティションはログを見ながらTypeを変えよう。
8. やってしまった!
パーティションの情報を書き換えながら慎重に操作してるつもりが、Enter押してしまった。
焦ってEscを押すと「Analyse」を選ぶメニューに戻ってしまった。
「また40時間やるのか、、、」と一瞬気落ちしたが、でも大丈夫。
ログさえあれば自分で設定できるので問題ない。
しかし、安易にEnterを押してはいけない。
9. Analyse再開
もう一度Analyseからやりなおすのだけど、すぐにStopしていい。
そのままパーティションを直す画面に進むが、ここでログを元に、「add partition」すればいいのだ。
backupを取ってあるなら「load backup」してもいい。
ていうか結果論だけど「認識してないけど必要そうなパーティション」は無かったのだから、40時間も待たずにすぐに「load backup」してもよかったということになる。
10. そして書き込みへ
パーティションに問題が無いと思ったら、Writeするのだ。
「ホントに書き込むの?」と聞かれるので引き返したくなるけどWriteするのだ。
11. 一部復活
PCの再起動後HDDの一部のRecovery tools(G:)の部分だけが見えるようになった。
しかし相変わらずディスク管理上では「無効」のままだし、ボリュームの一覧にもなぜかGは表示されない。 diskpartではパーティション見える。 ダイナミックなのがだめなのだろうか。
まとめ
HDDが見えない
↓
TestDiskでパーティション検査
↓
パーティションを正す
↓
一部のパーティションだけOSから見えるようになる
次回予告
- ファイルの復元
- ベーシックデータに変換
- ブートセクタ
- 仮想ディスク