スクリプトリポジトリモジュールでは、スクリプト起動用ウィンドウモジュールによって実行されるエージェントマシン上で利用可能なスクリプトを見ることができます。また、スクリプトリポジトリモジュールは、スクリプト起動用ウィンドウモジュールがサポートする言語もリストします。
サポートされる言語をリストする言語テーブル。現行では、Java および shell スクリプトが含まれます。
エージェント上で利用可能なスクリプトを表示できるスクリプトテーブル。
スクリプトリポジトリモジュールのセキュリティは、次のように実装されます。
root ユーザーのみが以下のディレクトリにスクリプトを置けます。
/var/opt/SUNWsymon/SysMgmtPack/script-launcher/scripts
各スクリプトで、そのスクリプトの実行を許可するユーザーとグループを指定します。これらのユーザーとグループは、スクリプト設定ファイル内のユーザーおよびグループのエントリとして指定します。さらに、これらのフィールドは、スクリプトテーブルにより任意のコンソールから変更が可能です。これらのフィールドを変更できるのは、esadm ユーザーのみです。
root は、スクリプトテーブルのスクリプトユーザーフィールドに登録できません。
モジュールをロードします。
モジュールのロードとアンロードの詳細については、『Sun Management Center 3.5 ユーザーガイド』を参照してください。スクリプトリポジトリモジュールは、階層ウィンドウの「ローカルアプリケーション」から利用可能です。
モジュールブラウザウィンドウで、「ローカルアプリケーション」をダブルクリックします。
カテゴリが展開されます。
「ローカルアプリケーション」で、「スクリプトリポジトリ」をダブルクリックします。
カテゴリが展開されます。
スクリプト情報フォルダをダブルクリックして、言語テーブルとスクリプトテーブルを表示します。
スクリプト情報グループの最初の表は、言語テーブルです。この表には、エージェントでサポートされるすべてのスクリプト言語がリストされます。各表エントリには、次の属性があります。
言語名(例: Java)
言語ソース(例: /usr/java)
この表ではコマンドは利用できません。新しい言語を指定したり、言語を削除することはできません。エントリの数は固定であり、実装するモジュールとサポートされる言語によって定義されます。
言語ソースは、セルに新しい情報を入力することにより変更できます。
System Reliability Manager は、指定した場所で言語を見つけることができない場合に情報 (INFO) アラームを生成します。
スクリプトテーブルには、エージェント上でスクリプト起動用ウィンドウが認識するすべてのスクリプトがリストされます。表内の各エントリには、以下に示す属性があります。
表 5–1 スクリプトテーブルの値
ブラウザを使用して変更できるフィールドは、「管理状態」、「ユーザー」、および「グループ」です。「管理状態」は、スクリプトの希望する状態を入力する領域です。たとえば、「管理状態」は有効または無効にできます。ここで指定した状態は、希望する状態であり、モジュールが、すべての基準が満たされ準備ができたと判断した後は、「操作状態」のみが実際の状態を表します。
スクリプトがサポートされない言語の場合は、情報 (INFO) アラームが発行されます。
スクリプトがアクセス不可能な場合は、情報 (INFO) アラームが発行されます。
ScriptInfo.dat は、実行可能なスクリプトに関する情報を含んでいます。ScriptInfo.dat ファイルに新しいスクリプトを追加することで、モジュールはそのスクリプトを認識できるようになります。ユーザーが所有するすべてのスクリプトが、このファイルに登録されている必要があります。
新しいスクリプトを書きます。
ScriptInfo.dat ファイルの書式は、設定ファイルの標準の書式に従います。
slice:attribute=value
新しいスクリプトを ScriptInfo.dat ファイルにコピーします。
ScriptInfo.dat ファイルは、ユーザー名で識別されるディレクトリに置きます。次の例を参照してください。
/var/opt/SUNWsymon/SysMgmtPack/script-launcher/scripts/username/ScriptInfo.dat
スクリプトに関する情報がすでにこのファイルに含まれている場合は、現行の情報の下にスクリプトを追加します。
ScriptInfo.dat ファイルの以下の例では、2 つのスクリプトが含まれています。
Script1:Owner = Scott Script1:Name = MyHello Script1:Desc = Says Hello Script1:Language = Java1.2 Script1:Source = Hello.class Script1:AdminStat = 1 Script1:OperStat = 1 Script1:Users = Noble Script1:Group = Staff Script2:Owner = Denise Script2:Name = MyFile Script2:Desc = Says Hello Script2:Language = Java1.2 Script2:Source = Hello.class Script2:AdminStat = 1 Script2:OperStat = 1 Script2:Users = Noble Script2:Group = Staff