Solaris のシステム管理 (基本編)

UFS スナップショットのバックアップ

UFS スナップショットの完全バックアップまたは増分バックアップを作成できます。UFS スナップショットのバックアップ作成に、標準の Solaris バックアップコマンドを使用できます。

UFS スナップショットを含む仮想デバイスは、標準の読み取り専用デバイスとして動作します。つまり、仮想デバイスを、ファイルシステムのデバイスをバックアップするかのようにバックアップできます。

ufsdump コマンドを使用して UFS スナップショットをバックアップする場合、バックアップ時にスナップショットの名前を指定することができます。詳細については、次の手順を参照してください。

UFS スナップショットの完全バックアップを作成する方法 (ufsdump)

  1. スーパーユーザーになるか、同等の役割を引き受けます。

  2. バックアップする UFS スナップショットを指定します。


    # /usr/lib/fs/ufs/fssnap -i /file-system
     
    

    たとえば、次のようになります。


    # /usr/lib/fs/ufs/fssnap -i /usr
    Snapshot number               : 0
    Block Device                  : /dev/fssnap/0
    Raw Device                    : /dev/rfssnap/0
    Mount point                   : /usr
    Device state                  : idle
    Backing store path            : /var/tmp/snapshot3
    Backing store size            : 256 KB
    Maximum backing store size    : Unlimited
    Snapshot create time          : Wed Oct 08 10:38:25 2003
    Copy-on-write granularity     : 32 KB
  3. UFS スナップショットをバックアップします。


    # ufsdump 0ucf /dev/rmt/0 /snapshot-name
    

    たとえば、次のようになります。


    # ufsdump 0ucf /dev/rmt/0 /dev/rfssnap/1 
    
  4. スナップショットがバックアップされたことを確認します。

    たとえば、次のようになります。


    # ufsrestore tf /dev/rmt/0
    

UFS スナップショットの増分バックアップの作成方法 (ufsdump)

UFS スナップショットの増分バックアップでは、最後のスナップショット以降に変更のあったファイルだけがバックアップされます。ufsdump コマンドと新規 N オプションを組み合わせて使用します。このオプションは、増分ダンプをトラックするために /etc/dumpdates ファイルに挿入されるファイルシステムのデバイス名を指定します。

次の例では、ufsdump コマンド内で fssnap コマンドを組み込んでファイルシステムの増分バックアップを作成しています。

  1. スーパーユーザーになるか、同等の役割を引き受けます。

  2. UFS スナップショットの増分バックアップを作成します。

    たとえば、次のようになります。


    # ufsdump 1ufN /dev/rmt/0 /dev/rdsk/c0t1d0s0 `fssnap -F ufs -o raw,bs=
    /export/scratch,unlink /dev/rdsk/c0t1d0s0`
    

    上記の例では、ブロックデバイスではなくraw デバイスの名前を表示するために -o raw オプションが使用されています。このオプションの使用により、fssnap コマンドを raw デバイスを必要とするコマンド (ufsdump コマンドなど) に組み込むことが容易になります。

  3. スナップショットがバックアップされたことを確認します。


    # ufsrestore ta /dev/rmt/0
    

UFS スナップショットのバックアップ方法 (tar)

tar コマンドを使用してスナップショットをバックアップする場合、バックアップを行う前にスナップショットをマウントします。

  1. スーパーユーザーになるか、同等の役割を引き受けます。

  2. スナップショット用のマウントポイントを作成します。

    たとえば、次のようになります。


    # mkdir /backups/home.bkup
    
  3. スナップショットをマウントします。


    # mount -F ufs -o ro /dev/fssnap/1 /backups/home.bkup
    
  4. マウントスナップショットのディレクトリに移動します。


    # cd /backups/home.bkup
    
  5. tar コマンドを使用して、スナップショットをバックアップします。


    # tar cvf /dev/rmt/0 .
    

UFS スナップショットのバックアップからのデータの復元

仮想デバイスから作成されたバックアップは、基本的には、スナップショットがとられた時点でのオリジナルのファイルシステムの状態を表しています。ファイルシステムをバックアップから復元する場合は、オリジナルのファイルシステムから直接そのバックアップを作成した (たとえば ufsrestore コマンドを使用してバックアップを実行した) かのように復元します。ufsrestore コマンドを使用してファイルまたはファイルシステムを復元する方法については、第 49 章「ファイルとファイルシステムの復元 (手順)」を参照してください。