Guida all'installazione di Solaris 10 10/08: metodo JumpStart personalizzato e installazioni avanzate

Capitolo 5 Creazione di parole chiave personalizzate (procedure)

Questo capitolo contiene le istruzioni da seguire per creare parole chiave personalizzate per le regole o per altre operazioni.


Nota –

Se si sta installando un pool radice di Solaris ZFS, vedere il Capitolo 9Installazione di un pool radice ZFS con il metodo JumpStart per conoscere le limitazioni e consultare alcuni esempi di profili.


Parole chiave non operative

Per comprendere la natura di queste parole chiave, si pensi alla funzione delle parole chiave nelle regole. Una regola è una parola o un'unità lessicale predefinita che descrive un attributo generale del sistema, ad esempio il nome host, hostname, o la dimensione della memoria, memsize. Al suo interno, le parole chiave e i valori ad esse associati permettono di abbinare i sistemi con determinati attributi a un profilo. Questo meccanismo permette di definire le modalità di installazione di Solaris sui singoli sistemi di un gruppo.

Le variabili d'ambiente del metodo JumpStart personalizzato, usate negli script iniziali e finali, vengono impostate su richiesta. Ad esempio, le informazioni sul sistema operativo già installato su un sistema sono disponibili in SI_INSTALLED solo dopo l'utilizzo della parola chiave installed.

In alcuni casi, può essere necessario estrarre la stessa informazione in uno script iniziale o finale per uno scopo diverso da quello di abbinare un sistema a un profilo di installazione. La soluzione è rappresentata dalle parole chiave non operative. Queste parole chiave permettono di estrarre le informazioni degli attributi senza bisogno di impostare una condizione corrispondente per eseguire un profilo.

Per un elenco delle parole chiave non operative e dei relativi valori, vedere Parole chiave non operative e valori.

Creazione di un file custom_probes

È possibile che le parole chiave descritte in Parole chiave e valori usati nelle regole e Parole chiave non operative e valori non siano abbastanza precise per le esigenze di installazione del proprio sito. In questo caso, è possibile definire direttamente le parole chiave necessarie creando un file custom_probes.

Il file custom_probes è uno script della shell Bourne che contiene due tipi di funzioni. Il file custom_probes deve essere salvato nella stessa directory JumpStart in cui risiede il file rules. I due tipi di funzioni che è possibile definire nel file custom_probes sono le seguenti:

Sintassi del file custom_probes

Il file custom_probes può contenere qualunque comando, variabile o algoritmo che sia accettato dalla Bourne shell.


Nota –

All'interno del file custom_probes è possibile definire funzioni dichiarative e comparative che richiedano un singolo argomento. Quando la parola chiave corrispondente viene usata nel file rules, l'argomento che la segue viene interpretato (come $1).

Quando si utilizza una parola chiave personalizzata in una regola del file rules, i relativi argomenti vengono interpretati in sequenza. La sequenza inizia dopo la parola chiave e termina al primo simbolo && o al primo script iniziale.


Il file custom_probes deve soddisfare i seguenti requisiti:

Per ragioni di chiarezza e di organizzazione, è preferibile definire per prime le funzioni dichiarative e collocarle all'inizio del file, seguite dalle funzioni comparative.

Sintassi dei nomi delle funzioni in custom_probes

Il nome di una funzione dichiarativa deve iniziare con probe_. Il nome di una funzione comparativa deve iniziare con cmp_.

Le funzioni che iniziano con probe_ definiscono parole chiave non operative. Ad esempio, la funzione probe_tcx definisce una nuova parola chiave non operativa di nome tcx. Le funzioni che iniziano con cmp_ definiscono le parole chiave per le regole. Ad esempio, cmp_tcx definisce la parola chiave tcx per l'utilizzo in una regola.

ProcedureCreare un file custom_probes

  1. Usando un editor di testo, creare un file di testo contenente uno script per la Bourne shell. Assegnare al file il nome custom_probes.

  2. Nel file di testo custom_probes, definire le funzioni dichiarative e comparative desiderate.


    Nota –

    È possibile definire funzioni dichiarative e comparative che richiedano uno o più argomenti nel file custom_probes. Quando la parola chiave non operativa corrispondente viene usata nel file rules, gli argomenti che la seguono vengono interpretati in sequenza (come $1, $2 e così via).

    Quando si utilizza una parola chiave personalizzata in una regola del file rules, i relativi argomenti vengono interpretati in sequenza. La sequenza inizia dopo la parola chiave e termina al primo simbolo && o al primo script iniziale.


  3. Salvare il file custom_probes nella directory JumpStart in cui risiede il file rules.

  4. Verificare che il proprietario del file rules sia root e che le autorizzazioni siano impostate su 644.

Esempio di un file custom_probes con parole chiave personalizzate

Altri esempi di funzioni dichiarative e comparative si trovano nelle seguenti directory:

Il file custom_probes seguente contiene una funzione dichiarativa e una funzione comparativa che verificano la presenza di una scheda grafica TCX.


Esempio 5–1 File 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
  if
}

Il seguente esempio di file rules mostra l'uso della parola chiave non operativa definita nell'esempio precedente, tcx. Se in un sistema viene rilevata una scheda grafica TCX, viene eseguito il profilo di nome profilo_tcx. Diversamente, viene eseguito il file profilo.


Nota –

Le parole chiave non operative devono sempre essere collocate all'inizio del file rules. Questa posizione fa sì che vengano lette ed eseguite prima delle parole chiave usate dalle regole, che potrebbero fare riferimento a tali parole chiave non operative.



Esempio 5–2 Parola chiave non operativa usata in un file rules

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

Verifica del file custom_probes

Prima di usare un profilo, un file rules o un file custom_probes, occorre eseguire lo script check per verificare che non contengano errori di sintassi. Se nei profili, nelle regole e nelle funzioni dichiarative e comparative non vengono riscontrati errori, vengono creati i file rules.ok e custom_probes.ok. La Tabella 5–1 descrive il funzionamento dello script check.

Tabella 5–1 Operazioni eseguite dallo script check

Fase 

Descrizione 

check ricerca un file custom_probes.

Se il file esiste, check crea il file custom_probes.ok dal file custom_probes, rimuove i commenti e le righe vuote e mantiene i comandi della Bourne shell, le variabili e gli algoritmi. Quindi, check aggiunge alla fine la seguente riga di commento:

# version=2 checksum=num

ProcedureVerificare il file custom_probes

  1. Verificare che lo script check si trovi nella directory JumpStart.


    Nota –

    Lo script check si trova nella directory Solaris_10/Misc/jumpstart_sample sul DVD del sistema operativo Solaris o sul CD Solaris Software - 1.


  2. Spostarsi nella directory JumpStart.

  3. Eseguire lo script check per verificare i file rules e custom_probes.


    $ ./check -p path -r nome_file
    
    -p percorso

    Verifica il file custom_probes eseguendo lo script check dall'immagine di Solaris per la piattaforma del sistema anziché direttamente dal sistema in uso. percorso è l'immagine residente su un disco locale, su un DVD del sistema operativo Solaris attivato o su un CD Solaris Software - 1 attivato.

    Se il sistema utilizza una versione precedente di Solaris, questa opzione permette di eseguire la versione più recente di check.

    -r nome_file

    Specifica un file con un nome diverso da custom_probes. Usando l'opzione - r, è possibile provare la validità di una serie di funzioni prima di integrarle nel file custom_probes.

    Durante l'esecuzione, lo script check indica la validità dei file rules e custom_probes e dei profili esaminati. Se non vengono riscontrati errori, lo script restituisce il messaggio seguente: “The custom JumpStart configuration is ok” e crea i file rules.ok e custom_probes.ok nella directory JumpStart.

  4. Determinare se il file custom_probes.ok è eseguibile.

    • In caso affermativo, passare al Punto 5.

    • In caso negativo, usare il comando seguente.


      # chmod +x custom_probes
      
  5. Verificare che il proprietario del file custom_probes.ok sia root e che le autorizzazioni siano impostate su 755.