Solaris 8 のインストール (上級編)

custom_probes ファイルの作成

custom_probes ファイルとは

custom_probes ファイルは、rules ファイルと同じ JumpStart ディレクトリになければなりません。このファイルは、次の 2 つのタイプの関数を含む Bourne シェルスクリプトです。

表 8-2 custom_probes に定義する関数のタイプ

関数のタイプ 

説明 

プローブ 

必要な情報を収集するか、または実際の作業を実行して、定義された対応する SI_ 環境変数を設定します。プローブ関数はプローブキーワードになります。

比較 

対応するプローブ関数を呼び出して、プローブ関数の出力を比較し、キーワードが一致する場合は 0、キーワードが一致しない場合は 1 を返します。比較関数はルールキーワードになります。 

custom_probes ファイルの構文

custom_probes ファイルには、任意の有効な Bourne シェルコマンド、変数、またはアルゴリズムを含めることができます。


注 -

custom_probes ファイルで単一の引数を必要とするプローブおよび比較関数を定義できます。rules ファイルで、結果的に対応するカスタムプローブキーワードを使用する場合、このキーワードの後に続く引数が ($1 として) 解釈されます。

rules ファイルで、結果的に対応するカスタムルールキーワードを使用する場合、引数はこのキーワードの後から解釈され、次の && または begin スクリプトのどちらか最初にきた方の前で解釈が終了します。


custom_probes ファイルは、次のとおりでなければなりません。

より明確で効果的な構成にするために、最初にすべてのプローブ関数をファイルの一番上に定義してから、比較関数を続けて定義してください。

custom_probes の関数名の構文

プローブ関数名は、probe_ で始める必要があります。比較関数名は、cmp_ で始める必要があります。

probe_ から始まる関数は、新しいプローブキーワードを定義します (たとえば関数 probe_tcx は、新しいプローブキーワード tcx を定義します)。cmp_ で始まる関数は、新しいルールキーワードを定義します (たとえば cmp_tcx は、新しいルールキーワード tcx を定義します)。

custom_probes ファイルの例

この custom_probes ファイルには、TCX グラフィックスカードがあるかどうかをテストするプローブおよび比較関数が含まれます。


注 -

プローブおよび比較関数の追加例は、次の場所にあります。


#!/bin/sh
# 
# custom_probe script to test for the presence of a TCX graphics card.
# 
 
# 
# PROBE FUNCTIONS
# 
probe_tcx() {
  SI_TCX=`modinfo | grep tcx | nawk '{print $6}'`
  export SI_TCX
}
 
# 
# COMPARISON FUNCTIONS
# 
cmp_tcx() {
  probe_tcx
 
  if [ "X${SI_TCX}" = "X${1}" ]; then
     return 0
  else
     return 1
  fi
}

rules ファイルで使用されるカスタムプローブキーワードの例

この例の rules ファイルは、以前の例 (tcx) で定義されたプローブキーワードの使用法を示しています。TCX グラフィックスカードがシステムにインストールされていて検出されると、profile_tcx が実行されます。そうでない場合は、profile が実行されます。


注 -

プローブキーワードは、rules ファイルの最初またはその近くに指定して、プローブキーワードに依存する可能性がある他のルールキーワードより前に読み取られて実行されるようにしてください。


 
probe tcx
tcx     tcx     -     profile_tcx     -
any     any     -     profile         -

custom_probes ファイルを作成する方法

  1. 選択したテキストエディタを使用して、Bourne シェルスクリプトのテキストファイル custom_probes を作成します。

  2. custom_probes テキストファイルで、必要なプローブ関数と比較関数を定義します。


    注 -

    custom_probes ファイルには、引数を必要とするプローブおよび比較関数を定義できます。rules ファイルで、結果的に対応するカスタムプローブキーワードを使用する場合、このキーワードの後に続く引数は順番に ($1、$2 などとして) 解釈されます。

    rules ファイルで、結果的に対応するカスタムルールキーワードを使用する場合、引数はこのキーワードの後から解釈され、次の && または begin スクリプトのどちらか最初にきた方の前で解釈が終了します。


  3. custom_probes ファイルを JumpStart ディレクトリに保存します (rules ファイルと同じ)。

    rootrules ファイルを所有し、そのアクセス権が 644 に設定されていることを確認します。