As palavras-chave de regra e de sondagem que são descritas em Palavras-chave e valores de regras e Palavras-chave e valores de investigação podem não ser precisas o suficiente para suas necessidades. É possível definir sua própria regra personalizada ou palavras-chave de sondagem ao criar um arquivo custom_probes.
O arquivo custom_probes é um script de shell Bourne que contém dois tipos de funções. É necessário salvar o arquivo custom_probes no mesmo diretório JumpStart onde foi salvo o arquivo regras. Os dois tipos de funções que podem ser definidos em um arquivo custom_probes são os seguintes:
Sondagem: reúne as informações que você deseja ou executa o trabalho real e configura uma variável de ambiente SI_ correspondente definida. Funções de sondagem tornam-se palavras-chave de sondagem.
Comparação: chama uma função de sondagem correspondente, compara a saída da função de sondagem e retorna 0 se as palavras-chave combinam ou 1 se a palavra-chave ainda não combina. Funções de comparação tornam-se palavras-chave de regra.
O arquivo custom_probes pode conter qualquer comando de shell Bourne válido, variável ou algoritmo.
É possível definir funções de sondagem e comparação que requerem um argumento único no arquivo custom_probes. Ao utilizar a palavra-chave de sondagem personalizada correspondente no arquivo regras, o argumento depois da palavra-chave é interpretado (como $1).
Ao utilizar palavra-chave de regra personalizada no arquivo regras, os argumentos são interpretados em sequência. A sequência inicia depois da palavra-chave e termina antes do próximo && ou script inicial, o que vier antes.
O arquivo custom_probes deve atender ao requisitos a seguir:
Obtém raiz como seu proprietário
Seja executável e obtenha permissões configuradas para 755
Contém pelo menos uma função de sondagem e uma função de comparação correspondente
Para aprimorar clareza e organização, defina todas as funções de sondagem antes, no início do arquivo, seguido por todas as funções de comparação.
O nome de uma função de sondagem deve começar com probe_. O nome de uma função de comparação deve começar com cmp_.
Funções que começam com probe_ definem novas palavras-chave de sondagem. Por exemplo, a função probe_tcx define a nova palavra-chave de sondagem tcx. Funções que começam com cmp_ definem novas palavras-chave de regra. Por exemplo, cmp_tcx define a nova palavra-chave de regra tcx.
Utilize o editor de texto para criar um arquivo de texto de script de shell Bourne. Nomeie o arquivo custom_probes.
No arquivo de texto custom_probes, defina as funções de sondagem e comparação.
É possível definir funções de sondagem e comparação que requerem argumentos no arquivo custom_probes. Ao utilizar a palavra-chave de sondagem correspondente no arquivo regras, os argumentos depois da palavra-chave são interpretados em sequência (como $1, $2 e assim por diante).
Ao utilizar palavra-chave de regra personalizada no arquivo regras, os argumentos são interpretados em sequência. A sequência inicia depois da palavra-chave e termina antes do próximo && ou script inicial, o que vier antes.
Salve o arquivo custom_probes no diretório JumpStart próximo ao arquivo regras.
Assegure-se que raiz possui o arquivo regras e que as permissões estão configuradas para 644.
É possível localizar exemplos adicionais de funções de sondagem e comparação nos diretórios a seguir:
/usr/sbin/install.d/chkprobe em um sistema que possui o software Solaris instalado
/Solaris_10/Tools/Boot/usr/sbin/install.d/chkprobe no DVD do sistema operacional Solaris ou no CD Software Solaris - 1
Os arquivos custom_probes a seguir contêm uma função de sondagem e comparação que testa a presença do cartão gráfico 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 if } |
O arquivo regra de exemplo a seguir mostra a utilização da palavra-chave de sondagem que é definida no exemplo anterior, tcx. Se um cartão gráfico TCX é instalado e localizado em um sistema, profile_tcx é executado. Caso contrário, perfil é executado.
Sempre coloque as palavras-chave de sondagem no começo do arquivo regras ou próximo a ele. Esse posicionamento garante que as palavras-chave sejam lidas e executadas antes de outras palavras-chave de regra que possam depender das palavras-chave de sondagem.
probe tcx tcx tcx - profile_tcx - any any - profile - |