メモ

覚書です

ファイル復旧(NTFSパーティションのサルベージ)

2008-11-09 08:48:35 | Windows全般
coLinux環境でのお遊びも限界が来ていたので、Gpartedでパーティションをリサイズして別パーティションをつくり、XPとLinux(Debian lenny)のデュアルブートにしてみました。

そしてある日、Linuxで作業していたところ事件がおきてしまいました。
XPのインストールされたNTFSフォーマットのパーティションをLinux側からマウントしようと、ntfsprogsなどを導入してみたのですが、うまくマウントできません。
カーネルモジュールもインストールされてるのになぁ、、、と思いつつ、以前1-CD Linuxでマウントできていたので、ためしにそちらでマウントできるか確認してみることにしました。
今回は最近焼いたUbuntu 8.10 Desktop 日本語 Remix CDを使ってみました。
でも残念ながらマウントできません。
それどころか、Linux(lenny)のパーティションさえもマウントできなくなってました。
あれれ、、、、。。。
fdiskを試したところ、パーティションテーブルが壊れてる模様です。
もちろんXPもLinuxも起動しません。

ハードディスクの操作で思い当たるのは、Linuxでとあるベンチマークテストを利用したくらいなんですが、/dev/sda4とするところを/dev/sdaとしちゃったからかな><
あるいはLinuxのインストールを何度か繰り返していて、インストール直後だったのでたまたま動いていた?実はGrubをインストールしたときに失敗してたとか?
今度から注意しないとなぁ^^;

gpartとfdiskを使ったりTestDiskを使えば、この時点で復旧できたかもしれません。
起動はしなくてもマウントくらいはできるようになって、データのサルベージくらいはできたかも。

まぁ消えても困らないという意識もあり、いろいろ遠回りをしちゃいました。

UbuntuでうまくいかなかったのでGPartedのライブCDも試しました。
まぁ当たり前ですが認識はしません。
ただパーティションをリサイズした際に、GPartedを使って150000(約150G)とサイズを指定していたので、その数値を確認してfdsikでパーティションテーブルに反映させればいいかなぁと思って、やってみたわけです。
その数値が間違っていたのかも知れませんが、fdiskを使った後も、マウントできない状態でした。(上で書いたツールで確認すれば数値を間違うことはなさそうです)

消えてもいいからとXPをインストールしなおすことにしました。
もともと余計なソフトがプレインストールされてたし、いろんなソフトを試していたので100Gくらいディスクを使っていたからです。
パーティションをリサイズした際に150Gまで減らしたので、残り50Gくらいになってました。

XP SP2のCDをいれて、インストーラーを起動させました。
そこでインストール先のパーティションを選ぶことができるわけですが、Linuxを入れていた領域(複数のパーティション)にXPを入れてみるとどんな感じだろうと思い、どうせなので試してみることにしました。
いままで1番目以外のパーティションにインストールしたことがなかったからです。
Windowsのインストーラーで後ろ側の領域を削除して、新たにパーティションを作成します。
そこにインストールしようとしたのですが、仕様なのか、1番目のパーティションもフォーマットしろといってきました。
仕方ないので、1番目も新しく作った2番目もNTFSで*クイック*フォーマットすることにしました。
とりあえずインストールは何事もなく無事完了し、Cドライブを覗いてみると見事にファイルがなくきれいな状態です。フォーマットしたから当たり前ですね。
フォルダオプションを変えて、すべてのファイルを表示してみるとntldrやらNTDETECT.COM、bootfont.binといった隠しファイルが作成されていました。
System Volume Informationというフォルダもあったかな。
これで1番目のパーティションは(クイック)フォーマットした上に、ファイルが作成されてデータが上書きされたので、サルベージからはどんどん遠のきます。

#本気でサルベージ(データの復旧)するなら、ハードディスクを取りはずして、ほかPCに接続してパーティションのイメージをバックアップして、バックアップしたデータに対して復旧ツールを試すことになるのかな。
#だから復旧したい大切なデータがある場合にはリカバリCDやWindowsのインストールCDなどで(フォーマットが伴う)再インストールはやってはいけません^^;
#ハードディスクをいじらず、そのまま残しておいたら、専門の業者に頼む道もあるわけですし。(費用の問題はありますが^^;)
#だから決して真似しないでください!(そんな人はいないと思いますが。。。)


XPのインストールも終わり、まずはいくつかの復旧ソフトを試してみることにします。
そのためネットワークカードのドライバのインストールをしてネットにつないで、いろんな情報を見ることにしました。
ついでにIntelのINF アップデート・ユーティリティーを入れてみたり、いくつかドライバを入れたりしてみました。
(再インストールの際にパフォーマンスをよくするインストールの順番とかもありましたね。)
ドライバのソフトによっては2番目のパーティション(今回の環境ではIドライブ)にシステムフォルダがあっても、1番目のパーティション(Cドライブ)にバックアップを作成するものもありました。
#ますますサルベージから遠のいています。

復旧ソフトの中にはCDからブートできる製品もあるようです。
(今回みたいにWindowsが起動しなくなった場合にも有効ですね)

有名な製品の試用版(デモ版)を使ってみたり、フリーなものも試してみたりしました。
試用版は復旧はできないけど、復旧できる可能性のあるファイルをリストアップしてくれるというものが多いですね。
オプションの選択をきちんとすれば復旧できたのかも知れませんが、今回のようなケースではあまり役にたたないソフトもありました。
評判のよさそうな製品の場合には、さすがにサルベージできそうな気配はありました。
それでもファイル名までは復旧できなかったり、フォルダ構成なんかも復旧できなさそうでした。
ファイル名がわからない場合、どのファイルが元々どのファイルだったのかを丹念に調べることになります。
拡張子なんかももちろん復旧できないケースも多いですし、得られる情報はほかには更新日時とかでしょうか。
仮に試してみたソフトがいろいろファイルを検出(リストアップ)してくれたとしても、(そのソフトを購入して)別ハードディスク(パーティション)にデータをサルベージできたように見えても、そのファイルが壊れている場合ももちろんあります。
リストアップされるファイルは復旧の*可能性がある*、というだけですね。

さて、ファイル名やフォルダ構成はやっぱり難しいみたいだし、一つ一つ復旧したファイルがどのファイルで、そして正常に復旧されているかどうかまでを丹念にチェックするのも気が遠くなります。
そういう意味でも、やはりバックアップは重要です!
大事な書類、記念の写真、編集した動画、メールのやりとり。
大切な情報がいっぱいあるわけですから、CD-Rや別PC、外付けHDDなどにバックアップしておきましょう。

さて、まぁ無理かなと思っても、お試し版があるわけなので、いろいろ試してみたのです。
自分では無理かなぁと思っても、可能な場合があるのであがいてみます。
そして、こんな覚書を書いたということは、ある程度サルベージできたからでもあります。
時間の浪費かなぁとか思いましたが、無駄足にはなりませんでした。多分。
優秀なソフトがあるものですね。
ほかにもいいのがあるかも知れませんが、今回最終的に復旧に利用してみたのは次のソフトです。

File Scavenger 3.2(日本語版)

Vectorからもダウンロードできるようです。
なぜか英語版より日本語版のほうが倍とまではいきませんが高かったです。
個人用ライセンス 日本語版US$84、英語版$49
今回は英語版と比べると高いですが、日本語版を使いました。

特徴はライセンスを購入しないでデモモードで動かしても64 KB 以下のファイルを復旧できる。
画像ならプレビューもできるようです。テキストファイルもプレビューできたら、もっと便利かも。
それにファイル名やフォルダ構成をできる限り復旧してくれました。
パーティションの復旧ではなく、ファイルの復旧、サルベージ。
検索結果をファイルに保存し、後で読み込め、作業再開時にディスクを再検索する必要がありません。

#もしご利用になる場合には、説明文書やよくある質問(FAQ)などを確認して、自分で判断してくださいね。


今回のケースではクイックスキャンではまったく検出されなかったので、Cドライブの完全スキャンを行ってみました。
ほかツールとくらべてもリストアップは多い部類の感じがします。
そして最小化して別作業していてもタスクバーに進捗状況が%表示されるのでわかりやすく、スキャンが終わるとリストアップしたファイル数とファイル容量の合計がステータスバーに表示されるようです。
デモ版でも64k以下の小さいファイルなら回復できますし、画像のプレビューもできるので実際復旧できるのか試すこともできます。
もちろんすべては無理です。実際プレビューできない(壊れた)画像などもありました。
でも他の試したソフトよりは、期待できそうです。
そしてうれしいことに、スキャンした結果を残したままの状態でライセンスを(クレジットで)購入し、そのまま復旧にとりかかれました。

#ただ後で振り返って、ちょっと失敗だと思ったのは、Cドライブのスキャンをしたことです。
#1番目のパーティションだけでなくハードディスク全体の領域もスキャンできるので、時間はかかってもそちらがお勧めです。

どのソフトでもそうですが、スキャンは時間がかかります。
その割には結果がいまいちだったソフトもありました。
File Scavengerは割りといい感じでした。復旧(回復)も思ったほど時間がかかりませんでした。

当たり前ですが、全部が全部、回復できるわけではありません。
100G占有していたファイルのうち、リストアップされたファイル数は約25万。容量はたしか38Gくらい。
容量だけを見ると1/3強検出してくれたとは言えるのかも。
でもファイルが重複しているケースもあるかも知れませんし、削除済みのファイルも含めてスキャンさせたので、検出率は実際はもっと低そうです。(何より上書きしてるしね)
やっぱりバックアップは大切ですね。

#Cドライブだけでなくハードディスク全体を完全スキャンしたら約30万ファイル、すべてを選択すると150G超えてました。
#最初のCドライブだけの結果は、見間違え?
#150G超えているので、すべて選択では重複したファイルも含めての容量なのかも。
#結果をメモしておくべきでした。


それにしても他ツールと比べても優秀な部類に入りそうです。
もちろん回復した1万ちょっと(約40G)のうち、どれだけ正常なファイルとして復旧できているか確認しないと評価はできません。
でも確認しても、物理的な破損だったり、上書きされたデータだったりするケースもありますし、今回のような利用の仕方ではよい評価がくだせることもなく。

使ってみてよかった点はファイル名やフォルダ構成をできるだけ回復してくれる点。比較的スキャンが早い。値段も高すぎないくらいかな。
ファイル名やフォルダがわかるのは、どのファイルを回復したらいいかという判断材料になるので有難いですね。
(もしわからなかったら不明なファイルを片っ端からあたることになります。日時である程度は判断できるかもですが。)
後からファイルを検証する場合にもかなり助かります。
正直、ゴミ箱から削除しちゃったというケースくらいだとフリーのソフトでも対応できるケースが多そうですが、パーティションテーブルが壊れたとか、フリーのツールでは無理だった場合に試す価値はあるかも。
惜しむらくはWindowsでしか動かないので、HDDを他PCにつなげて復旧するか、別HDDからWindowsを立ち上げて起動するとかになるかなぁ?

回復したファイルの検証は(全部はやりませんが)後日に回すとして、File Scavengerについてもう少し調べてみました。
メモリスティックやUSB接続のハードディスクなどの復旧事例もあるようです。
業務用はRAIDも対応しているみたい。$262。
個人用、RAID 0 再構築付きで$126。
個人用ライセンスは基本的に*同一個人が単一のコンピュータで使用するため*とされています。
(新しいPCに乗り換えた場合などはライセンスの移動というのができるようです。ただ「このセルフサービスによる方法は一度しか使えません」ともあるので一度きり?)
業務用は複数のPCで使えますが、操作する人間1人につき1ライセンスのようです。

検索すると日本語だけでも、いろいろヒットしますね。
日本語版と英語版の違いは「日本語サポート」「日本語バージョンを使える」だけと書いてあるサイトもありました。
そうだったんだ^^;


#追記
メールソフトのデータをサルベージして、利用してみました。
レジストリの設定データなどはない状態なので、アカウントの設定などは必要でしたが、一部復旧できました。
中には1G超のファイルもあったのですが、どうやらそれは大丈夫でした。(一部破損はあるかもしれません。)
当然のごとくサルベージできなかったサイズ0のファイルもありましたし、サルベージできたようにみえて、かなり破損している状態のものもありました。
いずれにしてもバックアップは大切だなぁと改めて認識しました。

十分な検証はしていませんが、サルベージはある程度できたということにします。
後日、念のためハードディスクをローレベルフォーマットして、OSを入れなおしてすっきりした環境にしようかな。
この場合、File Scavengerのライセンスはどうなるのだろう。
別PCへの移行ではなく再インストールだし、そのまま使えたらいいけど。
使えなかったら、ライセンスの移動とやらが必要になるのかな?
また使う機会があるかどうかわからないけど、もしそうなら不便だなぁ^^;
※残念ながらライセンスの移動が必要みたいです。
※ライセンスの移動が必要ですが、同一PCなら何度でもできるとのことです。

#追記2
タイトルではNTFSと書いていますが、FATにも対応はしているみたいです。
ただNTFSよりは復旧しにくいのかな?


#追記3
CDブートできるのは、ファイナルデータ8.0 特別復元版、特別ネットワーク版など。
特別ネットワーク版はExt3(Linux)、HFS+(Mac)にも対応しているらしい。
こちらもフォルダ構成などもできる限り復元してくれそう。
保険に持っておいてもよさそうです。
※ただ「高度な復元」は時間が結構かかりそうです。

cdboot.pdfを読んでみると、
CDブート版はKNOPPIXをベースにしていて、機能が限定されるらしい。

スキャン結果を保存/読み込み出来ない。
NTFS 圧縮・暗号化ファイルは対象外。
など。

利用手順としては、
CDから起動して、立ち上げるとまずシリアル番号を入力する。
認識された物理ドライブの中から選択。
パーティションを選択。
削除ファイルの検出が始まり、終わるとクラスタスキャン。

復元先は外付けハードディスク、USBメモリや別PCのWindows 共有フォルダも可能みたい。

#試用結果
1番目のパーティション(150G弱)のみ高度な復元によるスキャンを行う。
所要時間、3時間40分くらい。
回収ディレクトリという項目をすべて選択すると45585オブジェクト8.3G。
検出結果をざっと見た感じ、File Scavengerと似た感じの結果。

優れている点:
CDブートも可能。(実際には試していません)
試用版でも画像のプレビューが可能(サイズが大きいものもOKみたい)
ファイルビューアというバイナリエディタ的な表示をしてくれるモードも搭載。

劣っている点:
File Scavengerと比べてスキャンに時間がかかった。
File Scavengerでは復元できていたフォルダが検出されていなかったり、プレビューできない画像があった。(これは逆もあるかも知れません。ただ目立って気づいただけです。他の形で検出している可能性もあります。)

あと保存したスキャン結果をどう使うのか、試用版ではよくわからなかった。
FAQによると製品版にスキャン結果を読み込ませることができるらしい。

とりあえず今回は導入を見送ることにしましたが、ご家庭などでPCが1台とか、複数台あっても内臓HDDを取り出して、他PCにつなげることは難しいという場合などには、CDブートができるファイナルデータ8.0 特別復元版は魅力的です。
また少し高いバージョンだと破損したMS-Officeのファイルの修復を試みる機能もついているみたいなので、ビジネスシーンでも有効な場合があるかも。