Q 質問 ファイル・サーバー上の重要なファイルを誤って,消去してしまいました。バックアップはありません。復旧させる方法を教えてください。

A 回答 ファイルのデータがハード・ディスク内に残っている可能性があります。確実な復旧は期待できませんが,ファイル復旧ツールを利用すれば,ファイルを復旧できるかもしれません。


 ファイル・サーバー上のファイルをクライアントが削除すると,Windowsの「ごみ箱」に保存されず,そのまま消去されてしまいます。データをバックアップしている場合は,それをリストアすればファイルを復旧できますが,サーバーのバックアップがない場合,ほかの手段を試みることになります。

 手段は大きく2つあります。(1)アプリケーションが備えるファイル・バックアップ機能を利用する,(2)ファイル復旧ツールを利用する――です。

 (1)のアプリケーションが備えるファイル・バックアップ機能は,米Microsoftの「Word」や「Excel」,ジャストシステムの「一太郎」など多くのオフィス・アプリケーションが備える,作業ファイルの複製を自動的に作成する機能です。ファイルを失ったユーザーがこれらの機能をオンにしていれば,ファイルが残っている可能性があります。このファイルを探すには,[スタート]-[検索]-[ファイルやフォルダ]にあるWindowsのファイル検索機能を利用すると便利です。最後にファイルが変更された時間をキーに検索することもできます。

ファイルを削除しても
データはハード・ディスクにある

 (2)のファイル復旧ツールを利用する方法は,ファイルを削除しても,ハード・ディスク上にはデータが残っていることを利用します。ただし,必ず復旧できるわけではありません。また,復旧の可能性を下げないために,いくつか注意すべき点があります。ファイル削除の仕組みを理解すれば,それが分かります。

図1●ファイルを削除してもデータは残る
ファイルを削除した場合,ファイル・システム上ではファイルが消去されるが,ハード・ディスク上にはデータが残っている。このデータはファイル・システム上では空き領域として認識されており,上書きされるまで消えることはない。データ復旧ツールはこのデータを何らかの手段で発見,復旧するソフト

 その仕組みは「ファイル・システム」にあります(図1[拡大表示])。アプリケーションやユーザーの要求に応じて,ハード・ディスク上にファイルを配置,管理するOSの基本機能です。ファイル・システムが管理する情報は,(1)ファイル名,(2)タイム・スタンプ,(3)容量,(4)ハード・ディスクのどの場所にデータが存在するか――などです。

 通常のファイル読み取りや書き込みでは,アプリケーションはOSのAPIを介してファイル・システムにアクセスします。ファイル・システムは,APIからの命令を受けて,ファイル・システム自身が管理している情報から,ハード・ディスクへアクセスし,実データを操作します。

 新たにファイルを作成する場合は,ファイルの長さに合わせて,ファイル・システムが管理する使用中のディスク領域以外の部分(=空き領域)にデータを新たに書き込みます。

 ファイル削除の処理だけが特殊です。ファイル・システムがファイル削除の命令を受けると,ファイル・システムが管理する「ファイルの情報」は削除されますが,ハード・ディスク上にあるデータそのものは消去しません。わざわざ「00」などのデータで消去すると,それだけディスクI/Oの時間が必要になり,性能が劣化してしまうからです。データは削除しないまま,そこを空き領域として再利用します。

 従って,少なくともファイルが削除された直後は,ハード・ディスク上にデータが残っていることになります。このデータを何らかの形で読み出せれば,ファイルを復旧できます。

 ただし,この復元したいデータは,ファイル・システムには空き領域として認識されています。削除後,この領域が上書きされてしまえば,ファイルは復旧できません。復旧の可能性を高めるためには,上書きを防ぐ必要があります。復旧したいファイルの重要度にもよりますが,もし許されるなら,ファイル・サーバーをネットワークから切り離すとよいでしょう。また,Windowsの「エクスプローラ」のように,一時ファイルを生成するプログラムは起動してはいけません。

 上書きによるデータ消失を防止できたら,ファイル復旧ツールを利用してファイルの復旧を試みます。ファイル復旧ツールの代表的な製品として,米FINALDATAが開発した「FINALDATA」や,カナダR-tools Technologyの「R-Studio」があります。これらツールはハード・ディスク上の空き領域に残るデータをスキャンし,ファイルとして復旧させます。

(本誌)