NTFSでMFTが読み込めなくてもTestDisk(無料)かGetDataBack(有料)でちょっとは助かった。

前置き

ブログのタイトルにインフォホリックなどと書いているが、テキスト、音楽、動画などに妙な執着心を見せるも、それらを支えているOS、ファイルシステム、ハードなどには周囲を呆れさせるほど無頓着であったが、ubuntuファイルシステムが不整合を起こして、それを復旧させる前にバックアップをとりたいと思って、USBのHDD(NTFS)の領域を空けていたらそっちも崩壊するという二重災害に見舞われさすがにファイルシステムには気を配ろうというか、自力で調べるしかないという状態に見舞われたlightcyanであった。

しかし領域を空けるためにFileMany(Windows用)などを使って、重複ファイルを結構消して、「あ、どこにもないと思っていたファイルがこんなところにあった」と懐かしいファイル達との再会を味わった矢先にそのHDDが読めなくなってしまったのである。どうしてもあきらめ切れないのであった。

まず、ここまできたら、データの完全復旧はかなり難しい。このページに書いたとおりにしても、だめかもしれないというところはご了承ください。

まずこのページに来た人はNTFSのMFTに問題があるという所まで問題を追い詰めた人でしょうから、それ以前のことについて書く必要もないとおもいますが、NTFSでトラブルを起こしてググってよく上のほうにくる質問サイトでは、「MFTがこわれているならあきらめましょうと」か「Knoppixでなんとかした人がいたと読んだのですが…」と言った人に「NTFSWindowsなのでKnoppixで指示されている通りWindowsのディスクチェックをかけてみてください」というサイトが多かったのでとりあえず自分用にも書いておきます。

1.状態
WindowsではExplorerでそのHDDにアクセスできない。プロパティは出せたのでディスクチェックをかけたが、何も起こらずにダイアログボックスが消えてしまう。コマンドプロンプトでも

C:\Documents and Settings\lightcyan>e:

などとやっても、エラーが起こり'e:'に行けない。Ubuntuで見てみるとMFTがI/O errorでloadできないというようなエラーだった。「WindowsじゃMFTが問題って事も分かんないじゃん」と心の中でつっこんだ。

2. ググる
WindowsXPPCが起動できなくなりました.(2/3)の回答8でTestDiskの名前が挙がっておりました。実はこのソフトはパーティションが壊れたときに使うものと思っていましたが、MFTもマスターかミラーかどちらかが正常なら対処できるそうです。そこで、TestDisk 非公式ヘルプを見てみるとNTFSのブートセクタとMFTの修復という項目がありました。

3. TestDiskを試す。
[Advanced]→[Boot]→[Repair MFT]だったと思いますが、これは結局「MFT and MFT mirror are bad.」でだめでした。で先ほどのAdvancedメニューのNTFSブートセクタとMFTの修復のページですが、三つの市販ソフトへのリンクが張ってあり、「このような場合には、Zero Assumption RecoveryGetDataBackRestorer 2000のような市販ソフトを使った方がよいかもしれない。」と書いてあった。

4. 3つの市販ツールのページにアクセス。
といってもリンク先の一番最初のページににMFTという言葉があるかどうかをチェックしただけなんですけどね。あったのはGetDataBackだけでした。

5. GetDataBackにはFree demoがある!?
つい落としました。どこまでがデモでどこからが有料なのかとビクビクしながら使いました。英語は読みましたが、大体忘れました。結局ディスクを全部スキャンするようです。

6. あ、ファイルがあった! 生きてるHDDにコピーしよう←ここで料金発生。
うまいやり方です。「コピーするには製品版が必要です」的な英語が出てきます。ついFree demoを落とさせ長時間スキャンさせ、ファイルがあったと確認してから金を要求するのです。まぁでも良心的ですよね。カードでの支払いも海外サイトだと、あなたの入力した住所と、カードの所持者の住所が一致しない的な事を言われることもあるようですが、それもなくさっくり次のページで、Thank you for registering GetDataBack for NTFS! の文字とともにLICENSE KEYが書いてありました。Help→Registerでコピーできるようになりました。$79。この金でHDD買いたかった…

追記: GetDataBackは、スキャン結果をuntitled.st3などのファイルに保存する事ができます。GetDataBackは僕が使っている間一度落ちました。そこで再起動後このファイルをSTEP1でLoadを選んだ後に、ファイルをロードしてSTEP3に行くみたいな選択肢があるので、そこでロードしてください。それでも結構時間はかかるみたいですけど。