web-dev-qa-db-ja.com

削除済みファイルを未削除としてマークする

私のハードドライブの容量は500GiBです。 150GBのデータが誤って削除されました。その事件の後、私はドライブにバイトを書き込まなかったので、私のデータはそこにあることが保証されています。 Recuvaのようなアプリを試しましたが、すべてのアプリでデータがそこにあることが示され、データを別の場所に保存できますが、問題はそれをしたくないということです。

MFTでファイルが削除されていないものとして再度マークされるようにしたいだけです。この目的で利用できるアプリはありますか?たくさん検索しましたが何も見つかりませんでした。MFTでファイルを削除済みとしてマーク解除することはできますか、それとも何かが足りませんか?手動で行う方法を知っていれば、このためのアプリを書くことができます。

11
Elmo

[〜#〜] ntfs [〜#〜] ボリューム上のファイルの削除は、1ビットを反転するほど簡単ではありません。削除されたファイルと削除されていないファイルの違いはMFTではわずか1ビットですが、ストリームとして保存されているファイルの内容を復元し、で使用されているように削除されたセクターにフラグを立て直す必要もあります。セクターごとに1ビットを含む$ Bitmap疑似ファイル。各ビットは、対応するクラスターが使用されている(割り当てられている)か、空きである(割り当てに使用できる)かを示します。

ジョブの複雑さは、すべての回復ツールが損傷したボリュームへの書き込みを好まないほどです。たとえば、$ Bitmapでセクターを使用済みとしてマークすると、そのセクターがすでに別のファイルで使用されている場合、クロスチェーンが発生する可能性があります。

この記事は、16進ダンプの問題を非常によく示しています。
Windowsの「ファイル回復」シリーズ:パート5 NTFSファイルシステムから削除されたファイルを手動で回復する

別の記事には、「削除された」ビットをアンフリップするように変更できるプログラムのソースコードも含まれています: NTFSでファイルの削除を取り消す

MFTを編集してそのビットを反転できるNTFSディスクエディタはかなりあります。私がグーグルで見つけたもののいくつか(しかし幸いにも使用する必要はありませんでした)は:
WinHex
NTFSデータ復旧ツールキット
[〜#〜] dmde [〜#〜]
フリーウェアアクティブディスクエディタ

動作する可能性のある解決策は、MFTで削除されたビットを元に戻し、chkdskユーティリティを使用して内容を回復することです。このユーティリティは、セクターを回復できます。セクターが再割り当て可能として誤ってマークされたファイルのチェーンであり、$ Bitmapを修正します。

ただし、この手順によってディスクが破壊される可能性は常にあります。

これが、あなたと上記のすべてのコメンテーター(私を含む)がインプレースリカバリを行う製品を見つけられなかった理由です。 NTFSに取り組んでいるMicrosoftの従業員でない人にとっては、ディスクを台無しにする可能性は単純に多すぎます。

あなたへの私の最善の推奨事項は、2番目のハードディスクを取得し、その上のファイルを回復することです。 1つのバックアップディスクでは不十分であることがわかったと思います。私はすでに友人から彼らの唯一のバックアップを回復するように頼まれたいくつかのケースがありました、そして私はいつも彼らに2つのバックアップディスクを持つように助言します(時には遅すぎる)。

さらに、2つのバックアップディスクの少なくとも1つをコンピューターから切断する必要があります。コンピューターが自分自身と接続されているすべてのUSBデバイスを揚げて、所有者にデータもバックアップも1回のヒットで残さないというケースを聞いた後、これをお勧めします。

5
harrymc

昨日言った のように、回復するファイルが少ない場合は、いつでもhex/disk-editorを使用して手動で試すことができますが、絶対にお勧めしません。

research とテストを数分間行った後、最終的に$MFTでファイルを削除されていないものとしてマークすることができましたが、問題はそれだけでは不十分であり、クラスターにもマークを付ける必要があります。 $BITMAPで使用中を使用します。この作業は難しすぎて手間がかかりすぎて見つけられなかったので、結局あきらめました。 chkdsk /fを実行して、不一致を検出し、クラスターを正しくマークするかどうかを確認することを検討しましたが、テストしたNTFSパーティションには、失いたくない他のファイルがいくつかあるため、リスクが高すぎると感じました。

(また、FAT *とは異なり、NTFSはファイルのクラスターチェーンを$MFTに格納しますが、回復時にクラスターチェーン全体にアクセスできるとは限らないため、ファイルが断片化されていることに注意してください。誤って消去した後、ドライブに何も書き込まなかったとしても、Windowsが書き込まなかったという意味ではありません。たとえば、\System Volume Informationに書き込んだ可能性があります。特に、 シャドウコピー/以前のバージョンのサービスが実行されています。)

明らかに、手動リカバリは実際には解決策でも、あなたの質問への回答でもありません。そのため、コメントとしてのみ投稿しました。悲しいことに、私が行ったすべての検索は空になり、あなたの質問に対する簡単な答えは次のとおりです:いいえ、NTFSでファイルを削除されていないものとして単にマークできる公開プログラムはありませんボリューム

(ドライブを使って凝ったことをしたり、ファイルを回復したり、フィルターを介して生データを提示して構造などを表示したりできる、高価なフォレンジックプログラムがありますが、それらは特に重要ではないため、役に立たないでしょう。元のドライブを変更します。)

2
Synetech