Solaris 10 5/08 インストールガイド (Solaris フラッシュアーカイブの作成とインストール)

カスタムスクリプトの作成

スクリプトによってアーカイブをカスタマイズできます。カスタムスクリプトは、次の目的で使用します。

スクリプト作成のガイドラインについては、「カスタムスクリプト作成のガイドライン」を参照してください。

Procedure作成前スクリプトの作成方法

このスクリプトは、アーカイブの作成時に実行されます。このスクリプトには、さまざまな使用法があります。

  1. 作成前スクリプトを作成します。「カスタムスクリプト作成のガイドライン」に記されているガイドラインに従います。

  2. スクリプトを /etc/flash/precreation ディレクトリに保存します。


例 3–1 作成前スクリプトからの抜粋

次の例は、作成前スクリプトからの抜粋です。



例 3–2 作成前スクリプト

#!/bin/sh
echo "Test precreation script started" >> $FLASH_DIR/summary
cat /opt/TestApp/critical_file_list | flcheck -
if [ $? != 0 ]; then
	echo "Test precreation script failure" >> $FLASH_DIR/summary
	exit 1
if
echo "Test precreation script started" >> $FLASH_DIR/summary
/opt/TestApplication/license_cloning
	$FLASH_DIR/predeployment/.TestApplicationLicenceTransfer \
	$FLASH_DIR/custom_sections/TestApplicationLicenceCounter
echo "Test precreation script finished" >> $FLASH_DIR/summary
exit 0

作成前スクリプトを使用してユーザー定義アーカイブセクションを作成する

作成前スクリプトを使用して、アーカイブ内にユーザー定義セクションを作成し、アプリケーションに関する特定の情報を提供できます。このセクションの目的は、アーカイブの保守です。スクリプトは、$FLASH_DIR/sections ディレクトリに配置する必要があります。Solaris フラッシュアーカイブは、ユーザー定義セクションを処理しません。たとえば、このセクションには、アーカイブの説明や、アプリケーションの整合性をチェックするスクリプトなどを含めることができます。

ユーザー定義セクションでは、次の書式を使用する必要があります。

Procedure配置前スクリプトの作成方法

このスクリプトは、アーカイブのインストール前に実行されます。スクリプトの目的がアーカイブの妥当性検査である場合、このスクリプトはアーカイブ内に保持されます。スクリプトの目的がクローンシステムのローカル構成を保存することである場合、このスクリプトはクローンシステム上に保持されます。このスクリプトは、将来のカスタマイズに必要なローカルデータの分析および収集も実行可能です。たとえば、クライアント固有の情報を、アーカイブから抽出されるファイルで上書きされる前に保存できます。この情報は、抽出後の最終段階で使用できます。

  1. 配置前スクリプトを作成します。「カスタムスクリプト作成のガイドライン」に記されているガイドラインに従います。

  2. スクリプトを次のディレクトリのいずれかに保存します。

    • アーカイブの妥当性検査を実行するには、/etc/flash/predeployment ディレクトリに保存します。

    • 作成前スクリプトを参照する場合、$FLASH_DIR/preinstall ディレクトリに保存します。

    • クローンシステム上の構成を保持する場合、JumpStart プロファイル内の local_customization キーワードに、クローンシステムに保存されているスクリプトへのパスを指定します。


例 3–3 配置前スクリプト

#!/bin/sh
$FLASH_DIR/TestApplication/check_hardware
if [ $? != 0 ]; then
	echo Unsupported hardware
	exit 1
fi
$FLASH_DIR/TestApplication/check_licence_key
if [ $? != 0 ]; then
	echo No license for this host
	exit 1
fi
$FLASH_DIR/TestApplication/deploy_license_key \
	$FLASH_DIR/TestApplication/.TestApplicationLicenceTransfer
$FLASH_DIR/TestApplication/save_data_files $FLASH_DIR/flash

exit 0

Procedure配置後スクリプトの作成方法

このスクリプトは、アーカイブ内またはクローンシステムのローカルディレクトリに格納され、インストール後に実行されます。スクリプトにより、クローンシステム上で新規システムイメージが再構成されます。スクリプトがアーカイブ内に格納されている場合、変更はすべてのクローンシステムに影響を及ぼします。スクリプトがクローンシステムのローカルディレクトリに格納されている場合、変更はそのクローンシステムにのみ影響します。たとえば、配置前スクリプトにより保存されたクライアント固有の情報をクローン環境に適用して、インストールを完了できます。

配置後スクリプトを使用して、アーカイブのインストール後にファイルを整理することも可能です。たとえば、/var/adm 内のログファイルなどを削除できます。


注 –

すべてのログファイルが、クリーンアップ用のスクリプトを必要とするわけではありません。/var/tmp 内のログファイルはアーカイブの作成時に自動的に削除されます。


  1. 配置後スクリプトを作成します。「カスタムスクリプト作成のガイドライン」に記されているガイドラインに従います。

  2. スクリプトを次のディレクトリのいずれかに保存します。

    • すべてのクローンシステムを操作するには、スクリプトを /etc/flash/postdeployment ディレクトリに保存します。

    • ローカルのクローンシステムのみを操作する場合は、JumpStart プロファイル内の local_customization キーワードに、クローンシステムに保存されているスクリプトへのパスを指定します。


例 3–4 配置後スクリプト

#!/bin/sh
$FLASH_DIR/TestApplication/clone_reconfiguration
$FLASH_DIR/TestApplication/restore_data $FLASH_DIR/flash

Procedure再起動スクリプトの作成方法

このスクリプトはアーカイブ内に格納され、システムの再起動後に実行されます。このスクリプトにより、システムの再構成後の最終構成がすべて実行されます。

クローンシステムに Solaris フラッシュアーカイブをインストールしたあと、ホスト固有のファイルがいくつか削除され、クローンマシン用として作成し直されます。インストールプログラムは、sys-unconfig(1M) コマンドと sysidtool(1M) プログラムを使用して、ホスト固有のネットワーク構成ファイルを削除して再作成します。再作成されるファイルは、/etc/hosts/etc/defaultrouter/etc/defaultdomain などです。再起動スクリプトを使用することで、任意の最終的な再構成処理を実行できます。

  1. 再起動スクリプトを作成します。

  2. スクリプトを /etc/flash/reboot ディレクトリに保存します。


例 3–5 再起動スクリプトの作成

#!/bin/sh 
$FLASH_DIR/TestApplication/finalize_license