Solaris 9 12/03 安裝指南

建立 custom_probes 檔案

如果規則關鍵字和值以及探測關鍵字和值中描述的規則關鍵字與探測關鍵字不夠精確,無法滿足您的需求,您可以透過建立 custom_probes 檔案來定義自己的自訂規則關鍵字或探測關鍵字。

custom_probes 檔案是包含兩種類型函式的 Bourne shell 程序檔。您必須將 custom_probes 檔案儲存在 rules 檔案所在的 JumpStart 目錄中。可在 custom_probes 檔案中定義的兩類函式如下:

custom_probes 檔案的語法

custom_probes 檔案可以包含任何有效的 Bourne shell 指令、變數或演算法。


註解 –

您可以在 custom_probes 檔案中定義需要單一引數的探測函式和比對函式。當您在 rules 檔案中使用相應的自訂探測關鍵字時,將會解譯該關鍵字後的引數 (解譯成 $1)。

當您在 rules 檔案中使用相應的自訂規則關鍵字時,引數會被解譯為在關鍵字之後開始,並在下一個 && 或開始程序檔 (無論哪一個先發生) 之前結束。


custom_probes 檔案必須滿足下列需求:

若要改善明晰度與組織性,請先在檔案的頂端定義所有的探測函式,再加上所有的比對函式。

custom_probes 中函式名稱的語法

探測函式的名稱必須以 probe_ 開頭。比對函式的名稱必須以 cmp_ 開頭。

開頭為 probe_ 的函式定義新的探測關鍵字。例如,函式 probe_tcx 定義新的探測關鍵字 tcx。開頭為 cmp_ 的函式定義新的規則關鍵字。例如,cmp_tcx 定義新的規則關鍵字 tcx

建立 custom_probes 檔案

  1. 使用文字編輯程式以建立 Bourne shell 程序檔文字檔案。命名 custom_probes 檔案。

  2. custom_probes 文字檔中,定義探測函式和比對函式。


    註解 –

    您可以在 custom_probes 檔案中定義需要引數的探測函式和比對函式。當您在 rules 檔案中使用相應的自訂探測關鍵字時,關鍵字後的引數會循序解譯 (解譯為 $1、$2,以此類推)。

    當您在 rules 檔案中使用相應的自訂規則關鍵字時,引數將在該關鍵字後,下一個 && 或開始程序檔 (無論哪個先出現) 前循序解譯。


  3. custom_probes 檔案儲存在 JumpStart 目錄中, rules 檔案的旁邊。

  4. 確保超級使用者擁有 rules 檔案,且許可權已設為 644。

custom_probes 檔案與關鍵字的範例

您可以在下列目錄中找到附加的探測函式範例與比對函式範例:

以下 custom_probes 檔案包含探測函式與比對函式,用於測試 TCX 圖形卡是否存在。


範例 25–1 custom_probes 檔案

#!/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 檔案將顯示先前範例中所定義的探測關鍵字 (tcx) 的用法。如果 TCX 圖形卡已安裝在系統中,並被找到,則系統會執行 profile_tcx。否則便執行 profile


註解 –

請一律將探測關鍵字放置在 rules 檔案的開頭或靠近開頭的位置,以確保在讀取並執行其他可能依賴這些探測關鍵字的規則關鍵字之前,先讀取並執行這些探測關鍵字。



範例 25–2 rules 檔案中使用的自訂探測關鍵字

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