SnapManager Oracle
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

サンプルのプラグインスクリプトの表示

共同作成者

SnapManager には、独自のスクリプトを作成する方法、またはカスタムスクリプトのベースとして使用できるスクリプトが用意されています。

サンプルプラグインスクリプトは、次の場所にあります。

  • <default_install_directory>\plugins\examples\backup\create に設定します

  • <default_install_directory>\plugins\examples\clone\create

  • <default_install_directory>\plugins\Windows\examples\backup\create\post を参照してください

サンプルのプラグインスクリプトを含むディレクトリには、次のサブディレクトリがあります。

  • Policy :設定されている場合に常にクローン処理で実行されるスクリプトが含まれます。

  • PRE :クローン処理の前に実行されるスクリプトを設定した場合に、そのスクリプトが含まれます。

  • Post :設定された場合にクローニング処理のあとに実行されるスクリプトを格納します。

次の表に、サンプルスクリプトを示します。

スクリプト名

説明

スクリプトのタイプ

validate_sid.sh

ターゲットシステムで使用されている SID に対する追加のチェックが含まれます。スクリプトは、 SID に次の特性があるかどうかを確認します。

  • 3 つの英数字で構成されます

  • 先頭の文字はアルファベットにします

ポリシー

cleanup.sh

ターゲットシステムをクリーンアップして、新しく作成したクローンを格納できるようにします。必要に応じて、ファイルとディレクトリを保持または削除します。

事前課題

mirror_The -backup.cmd のように入力します

Data ONTAP 7-Mode を使用している場合、 Windows 環境でバックアップ処理が実行されたあとにボリュームがミラーリングされます。

タスク後

vault_The _backup.cmd

Data ONTAP 7-Mode のいずれかを使用している Windows 環境で、バックアップ処理後に qtree をバックアップします。

タスク後

MIRROR_The _BACKUP _cDOT .cmd

clustered Data ONTAP を使用している Windows 環境では、バックアップ処理後にボリュームがミラーリングされます。

タスク後

vault_The _backup_cDOT .cmd

clustered Data ONTAP を使用している Windows 環境では、バックアップ処理後に qtree をバックアップします。

タスク後

SnapManager で提供されるスクリプトは、デフォルトで bash シェルを使用します。サンプルスクリプトを実行する前に、オペレーティングシステムに bash シェルのサポートがインストールされていることを確認する必要があります。

  1. bash シェルを使用していることを確認するには、コマンドプロンプトで bash コマンドを入力します

    エラーが表示されない場合は、 bash シェルは正常に動作しています。

    または、コマンドプロンプトで bash コマンドを入力することもできます。

  2. 次のディレクトリでスクリプトを探します。

    <installdir>\plugins\examples\clone\create を実行します

  3. vi のようなスクリプトエディタでスクリプトを開きます。

サンプルスクリプト

次のサンプルのカスタムスクリプトでは、データベースの SID 名を検証し、クローンデータベースで無効な名前が使用されないようにしています。このスクリプトには、スクリプトの実行後に呼び出される 3 つの操作(チェック、説明、実行)が含まれています。このスクリプトには、コード 0 、 4 、 4 のエラーメッセージ処理も含まれています。

@echo off
REM $Id: //depot/prod/capstan/Rcapstan_ganges/src/plugins/windows/examples/clone/create/policy/validate_sid.cmd#1 $
REM $Revision: #1 $ $Date: 2011/12/06 $
REM
REM

set /a EXIT=0

set name="Validate SID"
set description="Validate SID used on the target system"
set parameter=()

rem reserved system IDs
set INVALID_SIDS=("ADD" "ALL" "AND" "ANY" "ASC" "COM" "DBA" "END" "EPS" "FOR" "GID" "IBM" "INT" "KEY" "LOG" "MON" "NIX" "NOT" "OFF" "OMS" "RAW" "ROW" "SAP" "SET" "SGA" "SHG" "SID" "SQL" "SYS" "TMP" "UID" "USR" "VAR")

if /i "%1" == "-check" goto :check
if /i "%1" == "-execute" goto :execute
if /i "%1" == "-describe" goto :describe

:usage:
	echo usage: %0 "{ -check | -describe | -execute }"
	set /a EXIT=99
	goto :exit

:check
	set /a EXIT=0
	goto :exit

:describe
	echo SM_PI_NAME:%name%
	echo SM_PI_DESCRIPTION:%description%
	set /a EXIT=0
	goto :exit

:execute
	set /a EXIT=0

	rem SM_TARGET_SID must be set
	if "%SM_TARGET_SID%" == "" (
		set /a EXIT=4
		echo SM_TARGET_SID not set
		goto :exit
	)

	rem exactly three alphanumeric characters, with starting with a letter
	echo %SM_TARGET_SID% | findstr "\<[a-zA-Z][a-zA-Z0-9][a-zA-Z0-9]\>" >nul
	if %ERRORLEVEL% == 1 (
		set /a EXIT=4
		echo SID is defined as a 3 digit value starting with a letter. [%SM_TARGET_SID%] is not valid.
		goto :exit
	)

	rem not a SAP reserved SID
	echo %INVALID_SIDS% | findstr /i \"%SM_TARGET_SID%\" >nul
	if %ERRORLEVEL% == 0 (
		set /a EXIT=4
		echo SID [%SM_TARGET_SID%] is reserved by SAP
		goto :exit
	)

	goto :exit



:exit
	echo Command complete.
	exit /b %EXIT%