• ベストアンサー

リカバリーデータの場所

データリカバリーソフトでごみ箱から削除したデータを復旧することが出来ますが、その元データはハードディスクにどうやって保存されているのでしょうか? というのも、リカバリー可能なデータを完全に削除しても、ハードディスクの使用領域・空き領域ともに変化がないのです。圧縮していたとしても多少の変化があると思うのですが? 本来ののHDの容量に比べ確かにパーティションの合計は少ないですが、残りの部分はファイルシステムとして使えないと思うので、他に保存しておく場所って無いような気がするんですけど?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

ファイル一覧の目次とデータが別々にあると考えてください。 通常、ファイルを削除するとハードディスク上の目次からファイル名が消えるだけで、データ自体はハードディスク上に書き込まれたままです。 ですので、ハードディスクを走査すれば目次に載ってないファイルが出てくる→削除された復活できるファイル となります。 その目次から削除されたファイルのデータが書き込まれた部分は書き込み可能となり、別のデータを書き込むことができます。 別のデータを書き込まれてしまうと、前に書かれていたデータは復活できなくなります。 ハードディスクの空き容量は、 ハードディスク全体の容量-目次の合計=空き容量 と計算されます。ですので、完全に消去するソフトを使用してもしなくても空き容量は変わりません。 目次だけから消すか、目次とデータ本体を消すかの違いですから。 HDの容量と実際の容量が違うのは、計算方法が違うからです。 1GB=1024MB,1M=1024KB,1KB=1024B 1GB=1000MB,1M=1000KB,1KB=1000B と2種類の計算方法があり、HDに記載されている容量は下の省略した計算方法だからです。

noname#42243
質問者

お礼

御回答有難うございます。 目次が消えるだけですか。なるほど。 ということは、HDDの空きに余裕がある限りファイル本体は保管され続けるという認識で良いのでしょうか? 例えば10GBのHDDに1GBのファイルの作成・削除を10回以上繰り返すと、表面上の空き領域は10GBですが、実際のHDD上には過去10回の本体データが残っているということですか?

すると、全ての回答が全文表示されます。

その他の回答 (4)

  • name2006
  • ベストアンサー率51% (106/205)
回答No.5

>例えば10GBのHDDに1GBのファイルの作成・削除を10回以上繰り返すと ANo.4さんはこの例えを1GBのファイルを作成して、すぐ削除して、また作成してと10回以上繰り返したと解釈して解答しています。 この場合はHDDの同じ場所で作成と削除を繰り返しているので復元できるのは最後に削除したファイルになります。 もしこれが1GBのファイルを10個作成して10GBのHDDがいったんいっぱいになってから10個をまとめて削除したなら10個分のデータがHDD上に復元可能な状態で残っています。 >断片化のないA,B,C,D,E5個のファイル(全て同じ大きさ)で一杯になるHDDからファイルを表面上全部消して、V,W,X,Y(これも同じ大きさ)と書き込むと この場合A,B,C,D,Eの順番でHDDに書き込んだのであればV,W,X,Yは基本的に先頭から書き込まれますのでA,B,C,Dがあった場所に書き込まれます。 ですから復元できる可能性のあるファイルはEになります。

noname#42243
質問者

お礼

御回答ありがとうございます。 わかりやすい説明ありがとうございます。 ただ、 >この場合はHDDの同じ場所で作成と削除を繰り返しているので復元できるのは最後に削除したファイルになります。 内容が同じでも目次が異なれば(作成日時)別の領域に保存されるのでは無いのでしょうか?

すると、全ての回答が全文表示されます。
回答No.4

#1です。 HDDはセクタと言われる小さな入れ物に区切られています。 このセクタにデータが保存されています。 1つのセクタに保存できる容量は少なく、1つのファイルが複数のセクタを使用し大きなファイルが保存できるようになっています。 データを書き込む際には、基本的には先頭の空いてるセクタから埋めていきます。 [A][A][A][B][B][C][C][C][C][C][D][D][D][E][E][E][_][_][_][_] といった感じでファイルA~Eまでが上記の様にセクタを使用しているとします。 この状態でファイルBを消すと… [A][A][A][_][_][C][C][C][C][C][D][D][D][E][E][E][_][_][_][_] こうなります。Bがあった部分は書き込み可能のセクタとなりデータを書き込むことができます。 さらにファイルDを消すと… [A][A][A][_][_][C][C][C][C][C][_][_][_][E][E][E][_][_][_][_] と、ファイルBとファイルDのセクタは書き込み可能状態になります。 この図はファイルの目次から見た時のもので、ファイルBとファイルDのデータは実際には残っていますので、まだ復活できます。 この状態でファイルZを作ったとします。(ファイルZは容量が大きく7セクタ必要とする) 先頭の空きセクタから埋めていきますので… [A][A][A][Z][Z][C][C][C][C][C][Z][Z][Z][E][E][E][Z][Z][_][_] とファイルZはバラバラの位置に書き込まれます。 もともとファイルBとファイルDのあったセクタは上書きされてしまったので復活はできなくなります。 ですので、1GBのファイルを何回消して書いても、ほぼ同じ位置に保存されることになります。 このファイルZのようにセクタが繋がっていないことを断片化といいます。 断片化したファイルは、あっちこっちとジャンプしながら読み込みますので、読み書きに時間がかかります。 これをキレイに整列してくれるのがデフラグというツールです。

noname#42243
質問者

お礼

ご回答ありがとうございます。 セクタや断片化はデフラグツールで視覚的に表現されているのでなんとなくわかっているんですが。 >ですので、1GBのファイルを何回消して書いても、ほぼ同じ位置に保存されることになります。 今までの説明ですとディスクが埋まるまでは別の位置に保存されるのでは? 私が聞きたかったのは、例えば、断片化のないA,B,C,D,E5個のファイル(全て同じ大きさ)で一杯になるHDDからファイルを表面上全部消して、V,W,X,Y(これも同じ大きさ)と書き込むと、リカバリーできるファイルは「A」になるのかということです。 説明がわかりづらくて申し訳ありません。

すると、全ての回答が全文表示されます。
  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.3

> ちなみに完全に削除されていないファイルが新しいファイルに上書きされる順序は決まっているのでしょうか? 普通は先頭のクラスターからになるかと。 ファイルシステムにもよったかと思いますが。 デフラグの「診断」なんかを眺めると、何となく分かるのでは?

noname#42243
質問者

お礼

ご回答ありがとうございます。

すると、全ての回答が全文表示されます。
  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.2

こちらの記事が参考になると思います。 日経パソコンオンライン - 奇跡のファイル復活術 - 2ページ http://pc.nikkeibp.co.jp/article/NPC/20070628/276173/?P=2 の図3のように、黄色ファイルはHDD上のクラスターに分割して保存されています。 ファイルを削除すると、図4のように、ファイルを管理している情報だけを削除します。 容量の大きいファイルをコピーする場合より、削除する処理が早いのはこういう理由です。 > リカバリー可能なデータを完全に削除しても、ハードディスクの使用領域・空き領域ともに変化がないのです。 ハードディスクの容量は、ファイルを管理している情報を元に算出しますから。 -- 新しいファイルを保存すると、完全には削除されていないファイルが置かれているクラスターに上書きされる事があり、この場合には当該ファイルの復元が出来なくなります。 ファイル保存は、Windowsの起動/終了なんかの際にもシステムのファイルが書き込まれる事がありますし、仮想メモリ機能がメモリ確保の際に領域確保する事もあります。 ファイル復元の可能性をなるべく上げたい場合には、Windowsの終了を行わずに、いきなり電源を切った方が良いって事もあり得ます。 (そのせいで、HDDが物理的に壊れるリスクはありますが…。) デフラグを行うと、バラバラで保存されているファイルの保存場所を整理します。 この際、完全には削除されていないファイルが置かれているクラスターに、別のファイルの断片を上書きしますので、上書きされたファイルは復元が困難になります。

noname#42243
質問者

お礼

御回答有難うございます。 ちなみに完全に削除されていないファイルが新しいファイルに上書きされる順序は決まっているのでしょうか?単に古い物から消されるとか?

すると、全ての回答が全文表示されます。

関連するQ&A