ページの先頭行へ戻る
ETERNUS SF AdvancedCopy Manager 15.0 運用ガイド

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

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

ボリュームグループをリストアする場合

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

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

注意

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

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

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

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

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

    後処理シェルスクリプト(OpcRestore.post)の96-127、133、134、および138行目をコメント化して、後処理シェルスクリプトでは共有モードのボリュームグループを再構成しないようにしてください。

    リストア実行後に以下の作業を手動で実施して、ボリュームグループを再構成してください。

    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>
      #

ファイルシステム名

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

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

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

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

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

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

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

[80、89、139、148行目]

(変更前)

/usr/sbin/umount $mount_point

(変更後)

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

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

[110、169行目]

(追加)

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

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

[152、156、158、171、175、177、223、232行目]

(変更前)

/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 システム名

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

[197、251行目]

(追加)

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