fssnap コマンドを使用して UFS スナップショットを作成する場合、バッキングストアファイルがどれだけのディスク容量を消費するかを監視してください。バッキングストアファイルは、はじめは容量をまったく使用しませんが、その後特によく使用されているシステムにおいて急速に拡大します。バッキングストアファイルが拡大するのに十分な容量を必ず確保してください。または -o maxsize=n [k,m,g] オプション (n [k,m,g] はバッキングストアファイル最大限のサイズ) でそのサイズを制限してください。
バッキングストアファイルに容量が不足する場合、スナップショットが削除されてしまうことがあり、バックアップが失敗します。スナップショットのエラーの可能性を調べるため、/var/adm/messages ファイルを検査してください。
バッキングストアパスのディレクトリを指定して、バッキングストアファイルは指定のディレクトリに作成することもできます。たとえば、/var/tmp を指定した場合、次のバッキングストアファイルが作成されます。
/var/tmp/snapshot0 |
/export/home、/usr などのファイルシステムを個別に作成する代わりに大容量のルート (/) ファイルシステムを 1 つ作成した場合、これらのファイルシステムのスナップショットを個別に作成することはできません。たとえば、このシステムは、/usr 用の個別のファイルシステムを持ちません。次の Mounted on カラムの下を参照してください。
# df -k /usr Filesystem kbytes used avail capacity Mounted on /dev/dsk/c0t0d0s0 3618177 2190002 1391994 62% / |
/usr ファイルシステムのスナップショットを作成しようとすると、次のようなメッセージが表示されます。
# fssnap -F ufs -o bs=/snaps/usr.back.file /usr snapshot error: Invalid backing file path |
ここで、スナップショットを作成するファイルシステム (この例の場合、/usr ファイルシステム) 上にバッキングストアファイルを作成することはできません。
詳細は、fssnap_ufs(1M) のマニュアルページを参照してください。
マルチテラバイト UFS のスナップショットの作成は、より小さいサイズの UFS ファイルシステムに対するスナップショットの作成とほとんど同じです。唯一の違いは、ファイルシステム領域の 512G バイトごとにバッキングストアファイルが作成されるという点です。
512G バイトを超えるファイルシステムのスナップショットを作成する際には、次の注意点に留意してください。
複数のバッキングストアファイルが作成されます。
スナップショットの作成時にバッキングストアファイル名を指定した場合、その指定されたファイル名に基づく名前が後続のバッキングストアファイルに繰り返し付けられます。後続のバッキングストアファイルには同じ名前が付けられますが、「.2」、「.3」などの接尾辞がそれぞれ付加されます。
バッキングストアの名前は指定せず、その格納先 (ディレクトリ) だけを指定した場合、複数のバッキングストアファイル名が、「.2」、「.3」などの接尾辞付きで繰り返し作成されます。
複数のバッキングストアファイルが作成された場合でも、fssnap -i コマンドの実行時に表示されるのは、最初のバッキングストアファイルの名前だけです。これに対し、バッキングストア長として表示されるのは、スナップショットのすべてのバッキングストアファイルの合計サイズです。
バッキングストアファイルは空白ファイルです。ls コマンドで表示される空白ファイルの論理サイズは、du コマンドで表示されるその割り当て容量と同一ではありません。
スナップショットの作成時に unlink オプションを指定しなかった場合、スナップショットのバックアップ完了後や単にスナップショットを削除するときに、バッキングストアファイルを手動で削除する必要があります。
512G バイトを超えるファイルシステムのスナップショットの作成例については、例 25–2 を参照してください。
詳細は、fssnap_ufs(1M) のマニュアルページを参照してください。
スーパーユーザーになるか、同等の役割を引き受けます。
ファイルシステムに、バッキングストアファイル用の十分なディスク容量が存在することを確認してください。
# df -k |
同じ場所に同じ名前の既存のバッキングストアファイルがないことを確認します。
# ls /backing-store-file |
UFS スナップショットを作成します。
# fssnap -F ufs -o bs=/backing-store-file /file-system |
バッキングストアファイルは、UFS スナップショットを使用して取り込むファイルシステムとは異なるファイルシステムに存在する必要があります。
スナップショットが作成されたことを確認します。
# /usr/lib/fs/ufs/fssnap -i /file-system |
次の例は、/usr ファイルシステムのスナップショットを作成する方法を示します。バッキングストアファイルは /scratch/usr.back.file です。仮想デバイスは /dev/fssnap/1 です。
# fssnap -F ufs -o bs=/scratch/usr.back.file /usr /dev/fssnap/1 |
次の例は、バッキングストアファイルを 500M バイトに制限する方法を示します。
# fssnap -F ufs -o maxsize=500m,bs=/scratch/usr.back.file /usr /dev/fssnap/1 |
次の例は、1.6T バイトの UFS ファイルシステムのスナップショットの作成方法を示しています。
# fssnap -F ufs -o bs=/var/tmp /datab /dev/fssnap/2 # /usr/lib/fs/ufs/fssnap -i /datab Snapshot number : 2 Block Device : /dev/fssnap/2 Raw Device : /dev/rfssnap/2 Mount point : /datab Device state : idle Backing store path : /var/tmp/snapshot3 Backing store size : 0 KB Maximum backing store size : Unlimited Snapshot create time : Mon Jul 12 10:37:50 2010 Copy-on-write granularity : 32 KB |
fssnap -i オプションを使用すると、システムの現在のスナップショットを表示できます。1 つのファイルシステムを指定する場合、そのファイルシステムのスナップショットについての詳細な情報が表示されます。特定のファイルシステムを指定しない場合は、現在の UFS スナップショットすべておよび対応する仮想デバイスの情報が表示されます。
次の例に示すように、拡張スナップショット情報を表示する場合は、UFS ファイルシステム固有の fssnap コマンドを使用してください。
スーパーユーザーになるか、同等の役割を引き受けます。
現在のすべてのスナップショットをリスト表示します。
次に例を示します。
# /usr/lib/fs/ufs/fssnap -i Snapshot number : 0 Block Device : /dev/fssnap/0 Raw Device : /dev/rfssnap/0 Mount point : /export/home Device state : idle Backing store path : /var/tmp/snapshot0 Backing store size : 0 KB Maximum backing store size : Unlimited Snapshot create time : Mon Jul 12 10:37:50 2010 Copy-on-write granularity : 32 KB |
特定のスナップショットについての詳細な情報を表示します。
次に例を示します。
# /usr/lib/fs/ufs/fssnap -i /export Snapshot number : 1 Block Device : /dev/fssnap/1 Raw Device : /dev/rfssnap/1 Mount point : /export Device state : idle Backing store path : /var/tmp/snapshot1 Backing store size : 0 KB Maximum backing store size : Unlimited Snapshot create time : Mon Jul 12 10:37:50 2010 Copy-on-write granularity : 32 KB |
UFS スナップショットを作成する際、バッキングストアファイルがリンクされないように指定できます。リンクされていないバッキングストアファイルは、スナップショットを削除した後で削除されます。UFS スナップショットを作成する際に -o unlink オプションを指定しない場合は、あとでバッキングストアファイルを手動で削除する必要があります。
バッキングストアファイルは、バッキングストアファイルの削除に -o unlink オプションを使用した場合はスナップショットが削除されるまで、またはバッキングストアファイルを手動で削除するまで、ディスク容量を使用します。
スナップショットは、システムをリブートするか、あるいは fssnap -d コマンドを使用して削除できます。このコマンドを使用するときには、UFS スナップショットを含むファイルシステムのパスを指定する必要があります。
スーパーユーザーになるか、同等の役割を引き受けます。
削除するスナップショットを特定します。
# /usr/lib/fs/ufs/fssnap -i |
スナップショットを削除します。
# fssnap -d /file-system Deleted snapshot 1. |
スナップショットの作成時に -o unlink オプションを使用しなかった場合は、そのバッキングストアファイルを手動で削除してください。
# rm /file-system/backing-store-file |
次の例では、-o unlink オプションを使用しなかった場合にスナップショットを削除する方法を示します。
# fssnap -i 0 /export/home 1 /export # fssnap -d /export Deleted snapshot 1. # rm /var/tmp/snapshot1 |