SafetyNetはコピー先ボリュームのデータを保護することを目的としたCCCのユニークな機能です。この機能がデザインされた最も一般的な目的は、誤ってコピー先ボリュームとして選択されたボリュームの内容を保護することです。そのボリュームの内容を即座に削除する代わりに、CCCはその内容を“_CCC SafetyNet”という名前のフォルダに保管します。設定の間違いに気づいたら、SafetyNetフォルダからファイルを復元して、バックアップタスクの設定を訂正するだけです。
SafetyNetの機能は、“アーカイブされる必要のある古いデータ”と“ソースのデータセットと全く関係のないコピー先のデータ”の違いを知ることはできません。これらのファイルは同じ保護を提供されているので、多くのユーザーはSafetyNet機能をファイルの古いバージョンの復元の手段として利用しています。SafetyNetフォルダは本来この目的のためにデザインされていませんので、この目的で使用される場合多くの弱点があります。にも拘わらず、ファイルの古いバージョンをSafetyNetフォルダで探すユーザが増え続けています。
古い、不必要なデータでコピー先をいっぱいにしないように、CCCは空き領域が特定のしきい値より少なくなった場合SafetyNetの内容を削除します (この操作の設定を変更した場合、古さ、アーカイブのサイズを基に削除されます)。CCCがそのフォルダの内容を削除すると、それらのファイルが占有していた領域が即座に解放されます。
スナップショットとレガシーSafetyNetフォルダは相互に除外し合う
レガシーSafetyNetフォルダを含むコピー先ボリュームでスナップショットのサポートを有効にしている場合、解決しなければならないジレンマがあります。コピー先でスナップショットを作成すると、通常の削除方法はディスクスペースの解放にまるで効果が無くなります。古いスナップショットはSafetyNetフォルダのファイルすべての参照を保持するので、それらが消費している領域はその一番古いスナップショットが削除されるまで解放されることはありません。そしてその削除はコピー先がスナップショットの保持ポリシーに定義された空き領域の制限に達するまで起こりません。
このジレンマを解決するために、スナップショットがコピー先で有効な場合、CCCはSafetyNet機能を実行するためにスナップショットを活用します。レガシーの“_CCC SafetyNet”フォルダがコピー先にある場合、CCCはコピー先のSafetyNetのスナップショットを作成し (こうして、SafetyNetフォルダのそれぞれのファイルの参照を保持します)、それからレガシーSafetyNetフォルダを削除します。SafetyNetフォルダのファイルは、SafetyNetのスナップショット内に保持されるので、即座に喪失することはありません。けれでも、そのSafetyNetのスナップショットは新しく、コピー先ボリュームのスナップショットの保持ポリシーで指定されたSafetyNet保持の制限の対象になります。
レガシーSafetyNetフォルダよりスナップショットが有利な点
コピー先でスナップショットを活用することは、SafetyNetをファイルの古いバージョンを復元する目的で使用するという点では、フォルダベースのSafetyNetの弱点を補います。これはSafetyNet特有の利点ではなく、むしろスナップショットを使用する一般的な利点であることに注意してください。コピー先でスナップショットを使用すると決めた場合には、SafetyNetをファイルの古いバージョンを復元するメカニズムとして考えることを避ける必要があります。ファイルの古いバージョンを復元したい場合、バックアップのスナップショットを使用してください。SafetyNetはソースのデータセットと全く関係のないコピー先から何かが削除された場合にのみ使用されるはずの 安全対策 です。
過去にファイルを復元するためにSafetyNetを使用したことがある場合、スナップショットを使用してファイルの古いバージョンを復元することで得られる以下の利点を考えてみてください:
- スナップショットのバンドルファイル (例:フォトライブラリ) は完全です。フォトライブラリからいくつかのアルバムを削除した場合、レガシーSafetyNetフォルダからそれらを復元するのは困難です。スナップショットを使えば、SafetyNetの必要すらなくなります。というのは、それらのファイルはバックアップのスナップショットに保持されているからです。
- オペレーティングシステムの古いバージョンを復元できます。
- スナップショットの削除は非常にシンプルです。ゴミ箱を空にするためにアクセス権の問題やFinderの失敗に遭遇することがありません。
スナップショットベースのSafetyNetの不利な点
スナップショットはファイルの古いバージョンを復元したいユーザにとっては意義のなる利点を提供しますが、SafetyNet機能の元々の目的には少々の損失を伴います。項目がコピー先のレガシーSafetyNetフォルダに移動されても、それらはすぐにFinderに表示されるので、簡単なドラッグ&ドロップで元の場所に 即座に 復元できます。しかし、スナップショットが有効な場合には、それらの項目はスナップショットによって保持されますが、コピー先からは削除されます。それらの項目を復元するには、SafetyNetのスナップショットをFinderに表示してから、コピー先に コピー し直す必要があります。そのコピーの手順は単純な移動よりもかなりの時間がかかるだけでなく、コピー先ボリュームがいっぱいの場合は特にロジスティック的に困難な可能性があります。それらの場合、ファイルを別のボリュームに復元して、SafetyNetのスナップショットを削除して領域を解放してから、ファイルをオリジナルのボリュームにコピーし直す必要がある可能性があります。
これはスナップショットのそれほど重要ではない欠点である一方、point-in-timeの復元の利点は、SafetyNetがコピー先にしかないユニークなファイルを保護するという機能を保持する限り、この不利益よりずっと重要と考えます。
自分にとってどちらのアプローチが最適かを判断するにはどうすればいいですか?
その選択は、誤って設定してしまった場合 (例えば、間違ったコピー先を選択した、またはバックアップディスクが“安全”だと思って間違ってそこに保存してしまった場合など) の安全対策としてSafetyNet機能を重視するか、それともSafetyNet機能をファイルの古いバージョンの復元手段として使用するかによって変わってきます。ファイル (または OS) の古いバージョンを復元するためにバックアップを頼りにすることが稀にしかない場合、バックアップディスクでスナップショットを有効にしても、レガシーSafetyNetのメカニズム以上に利益を得ることはあまりありません。しかし、SafetyNetをファイルの古いバージョンを探すために使用する場合は、コピー先でスナップショットを有効にすることでバンドルファイルおよびOS全体の古いバージョンを取り出すことができるので、より信頼性の高い結果を得ることができます。