Solaris 10 11/06 Installationshandbuch: Solaris Flash-Archive (Erstellung und Installation)

Erstellen von Anpassungsskripten

Das Archiv kann anhand von Skripten angepasst werden. Verwenden Sie die verschiedenen Typen von Skripten für folgende Vorgänge:

Richtlinien zur Skripterstellung finden Sie unter Richtlinien für die Erstellung von Anpassungsskripten.

ProcedureSo erzeugen Sie ein Precreation-Skript

Ein solches Skript wird beim Anlegen des Archivs ausgeführt. Es hat verschiedene Aufgaben.

  1. Erzeugen Sie das Precreation-Skript. Befolgen Sie dabei die Richtlinien in Richtlinien für die Erstellung von Anpassungsskripten.

  2. Speichern Sie das Skript im Verzeichnis /etc/flash/precreation.


Beispiel 3–1 Ausschnitte aus einem Precreation-Skript

Die folgenden Beispiele sind Ausschnitte aus einem Precreation-Skript.



Beispiel 3–2 Precreation-Skript

#!/bin/sh
echo "Precreation-Skript wurde begonnen" >> $FLASH_DIR/summary
cat /opt/TestApp/critical_file_list | flcheck -
if [ $? != 0 ]; then
	echo "Test Precreation-Skript fehlgeschlagen" >> $FLASH_DIR/summary
	exit 1
if
echo "Test Precreation-Skript wurde begonnen" >> $FLASH_DIR/summary
/opt/TestApplication/license_cloning
	$FLASH_DIR/predeployment/.TestApplicationLicenceTransfer \
	$FLASH_DIR/custom_sections/TestApplicationLicenceCounter
echo "Test Precreation-Skript abgeschlossen" >> $FLASH_DIR/summary
exit 0

Erzeugen eines benutzerdefinierten Archivteils per Precreation-Skript

Mit einem Precreation-Skript kann im Archiv ein benutzerdefinierter Teil erzeugt werden, der anwendungsspezifische Informationen enthalten soll. Dieser Teil dient zur Archivpflege. Ein solches Skript muss im Verzeichnis $FLASH_DIR/sections abgelegt werden. Das Solaris Flash-Archiv verarbeitet benutzerdefinierte Teile nicht. So könnte dieser Teil beispielsweise eine Beschreibung des Archivs oder auch ein Skript für die Integritätsprüfung einer Anwendung enthalten.

Für benutzerdefinierte Teile gilt folgendes Format:

ProcedureSo erzeugen Sie ein Predeployment-Skript

Ein solches Skript wird vor der Installation des Archivs ausgeführt. Wenn das Skript zur Validierung des Archivs bestimmt ist, wird es im Archiv aufbewahrt. Dient es zur Beibehaltung lokaler Konfigurationen des Klon-Systems, so wird es auf dem Klon-System gespeichert. Dieses Skript kann auch lokale Daten, die für eine spätere Anpassung benötigt werden, analysieren und abrufen. So lassen sich beispielsweise client-spezifische Informationen speichern, bevor sie von zu extrahierenden Dateien überschrieben werden. Diese Informationen können dann in der Endphase im Anschluss an die Extraktion verwendet werden.

  1. Erstellen Sie das Predeployment-Skript. Befolgen Sie dabei die Richtlinien in Richtlinien für die Erstellung von Anpassungsskripten.

  2. Speichern Sie das Skript in einem der folgenden Verzeichnisse.

    • Skripten zur Validierung des Archivs speichern Sie in /etc/flash/predeployment.

    • Wenn ein Precreation-Skript auf dieses Skript verweist, speichern Sie es im Verzeichnis $FLASH_DIR/preinstall.

    • Zum Beibehalten von Konfigurationen auf einem Klon-System geben Sie im JumpStart-Profil mit dem Schlüsselwort local_customization den Pfad zu dem auf dem Klon-System gespeicherten Skript an.


Beispiel 3–3 Predeployment-Skript

#!/bin/sh
$FLASH_DIR/TestApplication/check_hardware
if [ $? != 0 ]; then
	echo Nicht unterstützte Hardware
	exit 1
fi
$FLASH_DIR/TestApplication/check_licence_key
if [ $? != 0 ]; then
	echo Keine Lizenz für diesen Host
	exit 1
fi
$FLASH_DIR/TestApplication/deploy_license_key \
	$FLASH_DIR/TestApplication/.TestApplicationLicenceTransfer
$FLASH_DIR/TestApplication/save_data_files $FLASH_DIR/flash

exit 0

ProcedureSo erzeugen Sie ein Postdeployment-Skript

Ein solches Skript wird entweder im Archiv aufbewahrt oder in einem lokalen Verzeichnis auf dem Klon-System gespeichert und im Anschluss an die Installation ausgeführt. Es ändert die Konfiguration eines neuen Systemabbilds auf einem Klon-System. Ist das Skript im Archiv gespeichert, dann wirken sich die Änderungen auf alle Klon-Systeme aus. Ist es in einem lokalen Verzeichnis auf einem Klon-System gespeichert, dann wirken sich die Änderungen nur auf dieses Klon-System aus. So können beispielsweise die durch ein Predeployment-Skript gesicherten client-spezifischen Informationen auf eine Klon-Umgebung angewendet werden, um die Installation zu vervollständigen.

Postdeployment-Skripten lassen sich auch zur Reinigung, also zur Entfernung überflüssig gewordener Dateien, nach der Archivinstallation einsetzen. Beispielsweise Protokolldateien wie diejenigen in /var/adm können entfernt werden.


Hinweis –

Nicht alle Protokolldateien benötigen jedoch ein Skript, um entfernt zu werden. Die Protokolldateien in /var/tmp können bei Archiverstellung ausgeschlossen werden.


  1. Erstellen Sie das Postdeployment-Skript. Befolgen Sie dabei die Richtlinien in Richtlinien für die Erstellung von Anpassungsskripten.

  2. Speichern Sie das Skript in einem der folgenden Verzeichnisse.

    • Wenn es auf alle Klon-Systeme angewendet werden soll, speichern Sie es in /etc/flash/postdeployment.

    • Soll es sich nur auf ein Klon-System auswirken, geben Sie im JumpStart-Profil mit dem Schlüsselwort local_customization den Pfad zu dem auf dem Klon-System lokal gespeicherten Skript an.


Beispiel 3–4 Postdeployment-Skript

#!/bin/sh
$FLASH_DIR/TestApplication/clone_reconfiguration
$FLASH_DIR/TestApplication/restore_data $FLASH_DIR/flash

ProcedureSo erzeugen Sie ein Reboot-Skript

Dieses Skript wird im Archiv gespeichert und nach dem Neustart des Systems ausgeführt. Das Skript erledigt abschließende Konfigurationsaufgaben, die unter Umständen nach der Systemkonfiguration anfallen.

Nach der Installation des Solaris Flash-Archivs auf einem Klon-System werden einige Host-spezifische Dateien gelöscht und für das Klon-System neu erstellt. Das Installationsprogramm verwendet zum Löschen und Neuerstellen der rechnerspezifischen Netzwerkkonfigurationsdateien den Befehl sys-unconfig(1M) und die sysidtool(1M)-Programme. Neu erstellt werden unter anderem Dateien wie /etc/hosts, /etc/defaultrouter und /etc/defaultdomain. Reboot-Skripten können Sie für jede beliebige abschließende Änderung der Konfiguration einsetzen.

  1. Erstellen Sie das reboot-Skript.

  2. Speichern Sie das Skript im Verzeichnis /etc/flash/reboot.


Beispiel 3–5 So erstellen Sie ein reboot-Skript

#!/bin/sh
$FLASH_DIR/TestApplication/finalize_license