Windows VistaのうちBusiness / Enterprise / Ultimateで使える新機能に、シャドウコピーというものがある。この機能では、NTFSドライブのファイル/フォルダのプロパティに[以前のバージョン]というタブが表示されるようになり、このタブから過去の時点のファイルを復元できる。
この機能は、デフォルトで1日に1回、自動的にファイルの変更の差分を「スナップショット」として保存することで実現されている。
「Windows Vistaエディションの比較」
http://www.microsoft.com/japan/windows/products/windowsvista/editions/choose.mspx
「Windows Vistaにおけるファイルのバージョン管理」
http://www.exconn.net/Blogs/windows/archive/2006/08/17/16155.aspx
「Windows Vistaでのデータ整合性管理の主なシナリオ」
http://www.microsoft.com/japan/technet/windowsvista/library/4ac505e6-dd8b-4ae7-80fa-b9d77cd8104d.mspx
「Windows Vista : Windowsバックアップ」
http://www.microsoft.com/japan/windowsvista/features/foreveryone/backup.mspx
データのフェイルセーフの面からは、シャドウコピーは大変に役に立つ機能といえるが、データ抹消の面からはこれまでになかった(実はすでにWindows Server 2003から、共有フォルダ用としては存在していたのだが)注意すべき対象となる。
現在、Vistaのシャドウコピーが実際に保存される場所やファイル名などについて具体的に説明している資料はない。しかしVistaのシャドウコピー機能は、Windows Server 2003のシャドウコピー機能の「ローカルフォルダ上での実装」だということなので、Server 2003のシャドウコピー機能についての情報から類推できるだろう。
Windows Server 2003のシャドウコピー機能では、シャドウコピー(スナップショット)が保存されるのは各ドライブの「System Volume Information」フォルダである。このフォルダはWindows 2000やXPでも、エクスプローラで隠しフォルダやシステムファイルを表示する設定にすると、各ドライブのルートに表示されるので、見たことがある人は多いだろう。
Vistaのシャドウコピーの実体も「System Volume Information」フォルダにあるものと推定できるが、「System Volume Information」フォルダの内容というのは抹消ツールの対象ではない。ファイルを選択して抹消したり、普通に削除したファイルの残存データに対して「未使用領域の抹消」を実行したりしても、シャドウコピーに保存されたデータは残ったままになる。
「System Volume Information」フォルダに対してアクセス権を持つのは、デフォルトではSYSTEMアカウントだけなので、管理者権限を持つアカウントで開こうとしても開けない。
だが「System Volume Information」フォルダを読み書きできるユーザーとして自分自身を追加することはできる(「System Volume Information フォルダへアクセスする方法(http://support.microsoft.com/kb/309531/ja)」を参照)。
そうすると「System Volume Information」フォルダを開き、すべての内容を選択して(例えばEraserで)抹消することで、シャドウコピーの実体を抹消できるのではないか。だが「System Volume Information」フォルダには復元ポイント(Windowsの「システムの復元」で使用される情報)も保存されているので、中身を全部抹消してしまうと「システムの復元」もできなくなってしまうという副作用を生む。
また、「復元ポイントを削除&縮小してディスク領域を節約する(http://www.atmarkit.co.jp/fwin2k/win2ktips/464delrd/delrd.html)」によると(これはXPについての記事だが)、「System Volume Information」フォルダの内容を直接削除するとシステムの整合性に影響する可能性があるという。「System Volume Information」フォルダの内容を直接抹消するのはやめたほうがいいようだ。
ではどうしたらいいだろうか。XPでは[マイコンピュータ]のプロパティ(またはコントロールパネル-[システム])の[システムの復元]タブで[システムの復元を無効にする]をONにすれば、復元ポイント(「System Volume Information フォルダ内の「_restore」で始まる名前のフォルダ)は自動的に削除される(詳しくは上記の記事を参照)。このあと未使用領域を抹消すれば、復元ポイントに保存されていたデータを抹消できることになる。
Windows Vista Business / Enterprise / Ultimateでシャドウコピーの有効/無効を設定するのは、コントロールパネル-[システム]の[システムの保護]タブである。[自動復元ポイント]のリストでチェックボックスをONにしているドライブが、シャドウコピーが有効になっているドライブである。
上記のXPの場合から推測すると、このチェックボックスをOFFにするとシャドウコピーの実体も削除されるのではないだろうか(当然シャドウコピーの利点も得られなくなる)。結果は「System Volume Information」フォルダのアクセス権を自分に与えていれば、このフォルダを開くことで確認できる。このあと未使用領域を抹消することで、シャドウコピーに保存されていたデータを抹消できることになる。ここのところは、まだ実際にVistaで確認してはいないので注意。
別の考え方として、完全に抹消したいデータは、シャドウコピーの対象にならないメディアに保存するというものもある。以下のメディアは[システムの保護]タブの[自動復元ポイント]リストに表示されないため、シャドウコピーの対象外である。
Copyright (C) Cybernetic Survival Network. All Rights Reserved.