ページの先頭行へ戻る
ETERNUS SF AdvancedCopy Manager 14.1 運用手引書

A.2.3 シェルスクリプトのカスタマイズ

バックアップの前後処理のシェルスクリプトについて、カスタマイズ方法を以下に説明します。

業務ボリュームをアンマウントしたくない場合

マウントされているがアンマウントしたくない業務ボリュームに対しては、バックアップ実行時の前処理のシェルスクリプト(OpcBackup.pre)の101~110行目、113、146行目(物理ボリュームの場合)または163~172行目(ボリュームグループの場合)のコメント(“#”)をエディタ等で消去し、101行目または163行目のif文で対象となるデバイスを指示してください。なお、108行目または169行目のsyncコマンドを実施してからバックアップ後処理を実施するまでの間は、業務ボリュームのファイルシステム更新操作を行わないようにしてください。もし、この間にファイルシステム更新操作が行われると、ファイルシステムが不完全な状態でバックアップが採取されるか、またはバックアップ後処理で実施するfsckコマンドがエラーとなる可能性があります。

ボリュームグループをバックアップする場合

ファイルシステムが構築された論理ボリュームを含むボリュームグループがバックアップ対象の場合は、前後処理のシェルスクリプトを修正する必要があります。

シェルスクリプトを修正後、前処理のシェルスクリプト(OpcBackup.pre)の158行目のexit文をコメント(“#”)化してください。

注意

  • カスタマイズをしていない状態では、ボリュームグループに対する前処理はエラーとなります。

注意

  • バックアップボリュームがボリュームグループの場合は、バックアップ後処理において、バックアップボリュームをLVMとして使用可能にするためにvgcfgrestoreコマンドによってボリュームグループ構成情報のリストアを実施しています。記載のシェルスクリプトでは、標準のバックアップファイル「/etc/lvmconf/“ボリュームグループ名”.conf」からボリューム構成情報のリストアを行っています。ボリュームグループ構成情報が別ファイルにバックアップされている場合は、シェルスクリプトをカスタマイズしてください。

  • クラスタ運用している場合は、クラスタを構成する各ノードにボリュームグループ構成情報が存在している必要があります。

注意

  • mountコマンドやfsckコマンドなどのOSコマンドのパラメーターやオプションなどは運用に合わせて、適宜修正してください。

注意

  • 共有モードのボリュームグループの場合

    共有モードのボリュームグループの再構成は、後処理のシェルスクリプト(OpcBackup.post)の90-138、144、145および150をコメント化して、後処理のシェルスクリプトではボリュームグループの再構成を実施しないようにしてください。

    バックアップ実行後に手動で以下の操作を行い、ボリュームグループの再構成を行ってください。

    1. ボリュームグループの停止(業務を構成している全ノードで実行します)

      # /usr/sbin/vgchange -a n <vg_name>
      #
    2. ボリュームグループ構成情報のリストア(ボリュームグループを作成したノードで実行します)

      # /usr/sbin/vgcfgrestore -n <vg_name> <pv_path>
      #
    3. 共有可能なボリュームグループのマーク(ボリュームグループを作成したノードで実行します)

      # /usr/sbin/vgchange -S y -c y <vg_name>
      #
    4. ボリュームグループの起動(業務を構成している全ノードで実行します)

      # /usr/sbin/vgchange -a s <vg_name>
      #

ファイルシステム名

バックアップ実行時の後処理のシェルスクリプト(OpcBackup.post)の217、301行目のファイルシステム名は、運用に合わせて適宜修正してください。

VERITAS Cluster Serverでクラスタ運用する場合

VERITAS Cluster Serverでクラスタ運用を行う場合で、業務ボリュームのマウントポイントがクラスタ業務に登録されている場合は、前後処理のシェルスクリプトのカスタマイズが必要となります。

前後処理のシェルスクリプト内のマウント/アンマウント処理を、マウントポイントリソースのオフライン/オンライン処理に変更してください。

また、マウントポイントリソースのオフライン/オンラインを行ってから、実際にボリュームがアンマウント/マウントされるまでに時間差があります。そのため実際にアンマウント/マウントされるまで待ち合わせる処理(sleepやdfコマンドの結果を監視するなど)をオフライン/オンラインの成否を判定する個所の後に追加してください。

以下に前後処理のシェルスクリプトのカスタマイズ例を示します。

[例] バックアップ前処理のシェルスクリプト(OpcBackup.pre)のアンマウント処理変更

[115、124、181、193行目]

(変更前)

/usr/sbin/umount $mount_point

(変更後)

/opt/VRTSvcs/bin/hares -offline リソース名 -sys システム名

[例] バックアップ前処理のシェルスクリプト(OpcBackup.pre)のアンマウント待ち処理追加

[145、213行目]

(追加)

while /usr/bin/df -l "$device">/dev/null 2>&1; do :; done

[例] バックアップ後処理のシェルスクリプト(OpcBackup.post)のマウント処理変更

[164、168、170、183、187、189、224、233行目]

(変更前)

/usr/sbin/mount $device $mount_point
/usr/sbin/mount -F $fs $device $mount_point
/usr/sbin/mount -F $fs $lvname $lv_mount_point

(変更後)

/opt/VRTSvcs/bin/hares -online リソース名 -sys システム名

[例] バックアップ後処理のシェルスクリプト(OpcBackup.post)のマウント待ち処理追加

[209、252行目]

(追加)

while ! /usr/bin/df -l "$device">/dev/null 2>&1; do :; done