付録E.3 サンプルバッチファイル

稼働中バックアップを実行する場合は,各コマンドのバッチスクリプトを作成して運用すると便利です。

バッチスクリプトのサンプルを次に示します。必要に応じて御利用ください。

 

#! /bin/sh

echo "バックアップのための環境変数を設定します。"
SYS_NAME=`uname`

case ${SYS_NAME} in
"HI-UX" )       BASE="/usr"
               ;;
"HP-UX" )       BASE="/opt"
               ;;
"AIX"   )       BASE=”/opt”
               ;;
esac
XODDIR=`cat $BASE/HiOODB/bin/usrenv`
export XODDIR

BFILE="-m /tmp/mlbackup/bfile"
if [ ! -d /tmp/mlbackup ]; then
   mkdir -p /tmp/mlbackup
   #chgrp `id -g -n` /tmp/mlbackup
   #chown `id -u -n` /tmp/mlbackup
   #echo "user:`id -u -n` group:`id -g -n`"
   #ls -ld /tmp/mlbackup
fi

echo "稼働中バックアップを開始します。"
echo "バックアップ準備コマンド[ADpreBK]を実行します。"
# /tmp/mlbackupディレクトリ下のbfileファイルにメッセージを出力します。

/groupmax/bin/ADpreBK $BFILE
rtn=$?
if [ $rtn -eq 0 ]
then
   echo "バックアップ開始コマンド[ADstrBK]を実行します。"
   # /tmp/mlbackupディレクトリ下のbfileファイルにメッセージを出力します。

   /groupmax/bin/ADstrBK $BFILE
   rtn=$?
   if [ $rtn -eq 0 ]
   then
       echo "バックアップ取得コマンド[MLgetBK]を実行します。"
       # /tmp/mlbackupディレクトリ下にバックアップデータを格納します。
       # /tmp/mlbackupディレクトリ下のbfileファイルにメッセージを出力します。

       /groupmax/bin/MLgetBK -d /tmp/mlbackup $BFILE
       rtn=$?
       if [ $rtn -eq 0 ]
       then
           echo "バックアップ終了コマンド[ADstpBK]を実行します。"
           # /tmp/mlbackupディレクトリ下のbfileファイルにメッセージを出力します。

           /groupmax/bin/ADstpBK $BFILE

           # echo 二次媒体へコピーします。
           # 二次媒体へのコピー処理を記述してください。
           # tar cvf /dev/tape /tmp/mlbkup
       else
           echo "バックアップ取得コマンド[MLgetBK]エラー終了($rtn)。バックアップ終了コマンド[ADstpBK]を実行します。"
           # /tmp/mlbackupディレクトリ下のbfileファイルにメッセージを出力します。

           /groupmax/bin/ADstpBK $BFILE
       fi
   else
       echo "バックアップ開始コマンド[ADstrBK]エラー終了。バックアップ終了コマンド[ADstpBK]を実行します。"
       # /tmp/mlbackupディレクトリ下のbfileファイルにメッセージを出力します。

       /groupmax/bin/ADstpBK $BFILE
   fi
else
   echo "バックアップ準備コマンド[ADpreBK]エラー終了。バックアップ終了コマンド[ADstpBK]を実行します。"
   # /tmp/mlbackupディレクトリ下のbfileファイルにメッセージを出力します。
   /groupmax/bin/ADstpBK $BFILE
fi
echo "稼働中バックアップが終了しました。"

 

なお,System Manager - TCP/IPのバックアップスケジュールに稼働中バックアップ用バッチスクリプトを指定することで,バックアップ処理をスケジュールすることができます。なお,スケジュールする前に,次の注意事項を必ず守ってください。

System Manager - TCP/IPを使用したバックアップスケジュール操作時の注意事項
スケジュールを設定する前に,次の点について確認してください。
  • 作成したバックアップ用バッチスクリプトは,必ずコマンドラインで実行を確認してからスケジュールを設定してください。バックアップ用バッチスクリプトが不正な動作をした場合,正常にスケジュールが監視されない場合があります。
  • バックアップ用バッチスクリプトで画面入力待ちとなる処理は決して実行しないでください。バックグラウンドでスクリプトが実行されるため,画面入力待ちとなった場合,スクリプトが終了しない状態となり,手動によるkillコマンドなどでバックアップ用バッチスクリプトの終了が必要となります。
  • スケジュールを設定する場合,コマンドラインとパラメタは必ずフルパスで指定してください。
  • バックアップ用バッチスクリプトは,システム管理者で実行する必要があります。バックアップスケジューリング操作時には,システム管理者で実行されるように,必ず設定してください。
    <設定例>
    コマンドライン  :/bin/su
    パラメタ     :[システム管理者名] -c [スクリプトフルパス名]
  • バックアップ用バッチスクリプトの先頭行には,必ず,
    #! /bin/sh
    などのように,スクリプトを実行するコマンドを記述してください。

バックアップスケジュールの詳細については,マニュアル「Groupmax System Manager - TCP/IP/System Agent - TCP/IP Version 5 システム管理者ガイド」を参照してください。