これは、私が当事者になりました。
データの仮置き場として使っていた外付けハードディスクにおいて、ルートに保存してあったファイルを削除しました。
ファイルは、ドライブ丸ごとバックアップを取ったイメージファイルで、少なくとも数GBはあったと思います。
ところが、削除するだけなのにやたら時間がかかる。
しばらくすると、
予期しないエラーのため、フォルダーを削除できません。
とか表示が出てきました。
ディレクトリが空ではありません。
とか言われたけど、そもそも削除したのはフォルダやディレクトリではありません。
ディレクトリ名も長い英数字の羅列で、ヤバい気しかしません。
「再試行」「スキップ」「キャンセル」と選択肢がありましたが、条件反射的に「キャンセル」を選択。
焦ってたので、スクリーンショット撮り忘れました。
結果、「キャンセル」したのにもかかわらず、ハードディスク内のファイルとフォルダがすべて消滅。
内心「やっぱり」と思いましたが、やるせない気持ちにはなります。
ちなみに、OSは「Windows 7」、外付けハードディスクのファイルシステムはNTFSです。
ファイルが消える原因
意図せずに突然ファイルやフォルダが消えてしまうのは、ファイルシステムのエラーが原因です。
もう間違いありません。
根本的な原因が他にあったとしても、
結果的にはファイルシステムに問題が発生したから、今まであったファイルが消えてしまうのです。
私のこの事例では、ハードディスク内のすべてのファイルとフォルダが消えてしまいましたが、
これはルートディレクトリに保存してあったファイルを削除しようとした際に発生した問題だったため、
その子孫ディレクトリであるすべてのサブディレクトリとファイルに影響を与えてしまったものと考えられます。
逆に考えると、これらの不具合はすべてファイルシステムの管理情報に関するものです。
データの上書きは、管理情報に限られています。
従って、ファイルを復元しようと思えばできるものと予想できました。
復元方法
ファイルが消えた直後なら、ファイル復元ソフトを使えば、簡単にファイルを復元できます。
削除したばかりのファイルを復元するのと同じです。
たとえば、「SoftPerfect File Recovery」のような簡易的なファイル復元ソフトでも復元可能です。
詳細は下記ページに書いてありますが、単純なファイルの復元なら「SoftPerfect File Recovery」は最適です。
インストールどころか、解凍する必要すらありませんので。
「SoftPerfect File Recovery」の使い方
ただし、これはファイル単位の復元であり、ドライブ内の論理構造を元に戻すものではありません。
というか、既に管理情報が上書きされている以上、
以前の管理情報のバックアップでもない限り、新たに正しい情報で上書きし直すしかありません。
つまり、必要なすべてのファイルを一旦別の場所(ドライブ)に復元した後、元の場所に移動させる必要があります。
加えて、元の場所に移動させる前に、ファイルが消えたドライブに対してやっておくべきことがあります。
再発防止策
ファイルを復元したところで、またファイルが消えてしまっては元も子もありませんので。
ファイルシステムの修復
そもそもファイルが消えるのはファイルシステムの問題なので、
ファイルシステムのチェック及び修復を行っておくべきです。
Windowsは「chkdsk」というファイルシステム修復ツールを持っています。
「chkdsk」でファイルシステムのチェックと修正を行っておけば、
連鎖的にファイルシステムに問題が発生する事態を防ぐことができます。
SMART情報の確認
ファイルシステムに問題が発生したこと自体は論理障害ですが、
そうなってしまった根本原因がハードディスクの動作不良にある可能性がなきにしもあらずです。
とりあえず、ハードディスクのSMART情報を確認する等、簡易チェックはしておいたほうがいいです。
当サイトでも、「CrystalDiskInfo」を使ったSMART情報の確認手順について解説しています。
ちなみに私の事例についてですが、ファイルシステム、ハードディスクのSMART情報、ともに問題ありませんでした。
これは問題が発生したのがルートディレクトリであり、
ファイルとフォルダが何もない状態の管理情報で上書きされてしまったため、
管理情報とファイル実体の不整合が起きなかったからだと推測しています。
ファイルシステム上何も存在しなければ、不整合も起きようがないというか。
ただ一般的には、「chkdsk」による修復が必要なケースが多いと思われます。