Guide d'installation de Solaris 10 8/07 : installation JumpStart personnalisée et installation avancée

Chapitre 5 Création de mots-clés de règles et de sondes personnalisés – Tâches

Ce chapitre aborde la création de mots-clés de règles et de sondes personnalisés, ainsi que la procédure à suivre.

Mots-clés de sondes

Pour bien comprendre ce que sont les mots-clés de sondes, il est important d'avoir assimilé ce que sont les mots-clés de règles. Un mot-clé de règles est une unité lexicale ou un mot prédéfini qui décrit l'attribut général d'un système, son nom d'hôte, hostname, ou la taille de sa mémoire, memsize, par exemple. Les mots-clés de règles, ainsi que les valeurs qui y sont associées, vous permettent d'établir une correspondance entre un profil et un système doté d'un attribut similaire. C'est en établissant de telles correspondances entre attributs que l'on installe le logiciel Solaris sur chaque système d'un groupe donné.

Les variables environnementales de la méthode JumpStart personnalisée, utilisées dans les scripts de début et de fin, sont définies à la demande. Les informations relatives au système d'exploitation installé sur un système donné, par exemple, ne figurent dans SI_INSTALLED que si vous avez spécifié le mot-clé installed.

Dans certains cas, vous devez extraire les mêmes informations dans un script de début ou de fin dans un but autre que de rechercher un système ou d'exécuter un profil. Les mots-clés de sondes apportent la solution. Ils extraient les informations d'attribut sans que vous ayez à définir une condition de correspondance pour exécuter un profil.

Reportez-vous à la rubrique Mots-clés et valeurs des sondes pour une liste des valeurs et des mots-clés de sonde.

Création d'un fichier custom_probes

Les mots-clés de sondes et de règles décrits dans les sections Mots-clés et valeurs des règles et Mots-clés et valeurs des sondes peuvent ne pas être suffisamment précis pour vos besoins. Vous pouvez définir vos propres mots-clés personnalisés en créant un fichier custom_probes.

Le fichier custom_probes est un script Bourne shell qui comporte deux types de fonctions. Vous devez impérativement enregistrer votre fichier custom_probes et votre fichier rules dans un même répertoire JumpStart. Vous trouverez ci-dessous les deux types de fonctions que vous pouvez définir dans un fichier custom_probes.

Syntaxe du fichier custom_probes

Votre fichier custom_probes peut comporter n'importe quel commande, variable ou algorithme Bourne shell valide.


Remarque –

Vous pouvez définir des fonctions de sonde et de comparaison nécessitant un seul argument dans votre fichier custom_probes. Lorsque vous utilisez le mot-clé de sonde personnalisé correspondant du fichier rules, l'argument qui suit le mot-clé est interprété (comme $1).

Lorsque vous utilisez le mot-clé de règle personnalisé correspondant du fichier rules, les arguments sont interprétés en séquence. La séquence commence après le mot-clé et prend fin avant le prochain && ou le script de début, le premier des deux prévalant.


Le fichier custom_probes doit remplir les conditions suivantes :

Dans un souci de clarté et d'organisation, définissez d'abord toutes vos fonctions de sonde en début de fichier, puis l'ensemble des fonctions de comparaison.

Syntaxe des noms de fonction dans custom_probes

Le nom d'une fonction de sonde doit commencer par probe_. Le nom d'une fonction de comparaison doit commencer par cmp_.

Les fonctions qui commencent par probe_ définissent de nouveaux mots-clés de sondes. La fonction probe_tcx, par exemple, définit le nouveau mot-clé de sonde tcx. Les fonctions qui commencent par cmp_ définissent de nouveaux mots-clés de règles. cmp_tcx, par exemple, définit le nouveau mot-clé de règle tcx.

ProcedureCréation d'un fichier custom_probes

  1. Créez un fichier texte de script Bourne shell dans l'éditeur de texte de votre choix. Nommez ce fichier custom_probes.

  2. Dans votre fichier texte custom_probes, définissez vos fonctions de sonde et de comparaison.


    Remarque –

    Vous pouvez définir des fonctions de sonde et de comparaison nécessitant des arguments dans le fichier custom_probes. Lorsque vous utilisez le mot-clé de sonde personnalisé correspondant du fichier rules, les arguments qui suivent le mot-clé sont interprétés en séquence (comme $1, $2 et ainsi de suite).

    Lorsque vous utilisez le mot-clé de règle personnalisé correspondant du fichier rules, les arguments sont interprétés en séquence. La séquence commence après le mot-clé et prend fin avant le prochain && ou le script de début, le premier des deux prévalant.


  3. Enregistrez votre fichier custom_probes dans le répertoire JumpStart à côté du fichier rules.

  4. Vérifiez que le fichier rules dépend de root et que le degré de permission est réglé sur 644.

Exemples de fichiers et de mots-clés custom_probes

Vous pouvez définir d'autres exemples de fonctions de sonde et de comparaison dans les répertoires suivants :

Le fichier custom_probes suivant comporte une fonction de sonde et de comparaison qui teste la présence d'une carte graphique TCX.


Exemple 5–1 custom_probes File

#!/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
}

Le fichier rules suivant illustre l'utilisation du mot-clé de sonde défini dans l'exemple précédent, tcx. En cas de détection d'une carte graphique TCX installée sur un système, profile_tcx s'exécute. Si ce n'est pas le cas, c'est profile qui s'exécute.


Remarque –

Placez toujours les mots-clés de sonde au début du fichier rules ou tout du moins dans les premières lignes. Cette position assure que les mots-clés sont lus et exécutés avant que d'autres mots-clés de règle ne dépendent des mots-clés de sonde.



Exemple 5–2 Mot-clé de sonde personnalisé utilisé dans un fichier rules

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

Validation du fichier custom_probes

Pour pouvoir utiliser un profil, le fichier rules et le fichier custom_probes, vous devez exécuter le script check pour indiquer que les fichiers sont définis correctement. Si tous les profils, règles et fonctions de sondes et de comparaison sont définis correctement, le programme crée les fichiers rules.ok et custom_probes.ok. Le Tableau 5–1 décrit le fonctionnement du script check.

Tableau 5–1 Conséquences de l'utilisation du script check

Étape 

Description 

check recherche un fichier nommé custom_probes.

Si le fichier existe, le script check crée le fichier custom_probes.ok à partir du fichier custom_probes, supprime les commentaires et les lignes blanches et conserve les commandes, variables et algorithmes Bourne shell. Ensuite, check ajoute le commentaire suivant à la fin :

# version=2 checksum=num

ProcedureValidation du fichier custom_probes

  1. Vérifiez que le script check figure dans le répertoire JumpStart.


    Remarque –

    Le script check se trouve dans le répertoire Solaris_10/Misc/jumpstart_sample du DVD du système d'exploitation Solaris ou du CD Logiciel Solaris - 1.


  2. Accédez au répertoire JumpStart.

  3. Exécutez le script check pour valider les fichiers rules et custom_probes.


    $ ./check -p chemin -r nom_fichier
    
    -p chemin

    Valide le fichier custom_probes en utilisant le script check de l'image logicielle Solaris de votre plate-forme à la place du script check du système que vous utilisez. chemin est l'image qui figure sur un disque local ou sur le DVD du système d'exploitation Solaris ou le Logiciel Solaris - 1 monté.

    Utilisez cette option pour exécuter la dernière version du script check si votre système utilise une version antérieure de Solaris.

    -r nom_fichier

    Définit un nom de fichier autre que le fichier custom_probes. L'utilisation de l'option -r vous permet de tester la validité d'un ensemble de fonctions avant d'intégrer celles-ci dans le fichier custom_probes.

    Au cours de son exécution, le script check indique la validité des fichiers rules et custom_probes, et de chaque profil. S'il ne rencontre aucune erreur, le script signale : "The custom JumpStart configuration is ok" et crée les fichiers rules.ok et custom_probes.ok dans le répertoire JumpStart.

  4. Déterminez si le fichier custom_probes.ok est exécutable.

    • S'il l'est, reportez-vous à l'Étape 5.

    • Si ce n'est pas le cas, entrez la commande suivante :


      # chmod +x custom_probes
      
  5. Vérifiez que le fichier custom_probes.ok dépend de root et que le degré de permission est établi sur 755.