Ein solches Skript wird beim Anlegen des Archivs ausgeführt. Es hat verschiedene Aufgaben.
Es überprüft den Inhalt und die Integrität der Software. Bei Unvollständigkeit bricht dieses Skript die Archiverstellung ab.
Es bereitet Software auf eine anschließende Anpassung auf Klon-Systemen vor.
Es führt während der Archiverstellung eine dynamische Registrierung anderer Installationsskripten durch.
Es fügt eine Meldung in die Datei mit der Zusammenfassung der Flash-Erstellung ein. Die Meldung muss kurz sein und lediglich darauf hinweisen, mit welchem Ergebnis Skripten gestartet und beendet wurden. Die Ergebnisse sind im Zusammenfassungsteil einsehbar.
Erzeugen Sie das Precreation-Skript. Befolgen Sie dabei die Richtlinien in Richtlinien für die Erstellung von Anpassungsskripten.
Speichern Sie das Skript im Verzeichnis /etc/flash/precreation.
Die folgenden Beispiele sind Ausschnitte aus einem Precreation-Skript.
Um die Startzeit im Zusammenfassungsteil zu verzeichnen, verwenden Sie dieses Beispiel:
echo "MyApp precreation script started">> $FLASHDIR/summary
Zum Überprüfen der Vollständigkeit von Software führen Sie den Befehl flcheck aus. Dieser Befehl kann nicht an der Befehlszeile eingegeben werden. Die Syntax lautet wie folgt:
flcheck Dateien und Verzeichnisse der Softwarekomponente ...| - |
In diesem Beispiel werden die Dateien und Verzeichnisse auf Vollständigkeit überprüft:
flcheck Dateien und Verzeichnisse der Softwarekomponente If Not in selection - refuse creation echo "Anwendung unvollständig">>$FlashDIR/summary
Um neue, unerwartete Dateien und Verzeichnisse beizubehalten und die Archiverstellung nicht abzubrechen, verwenden Sie dieses Beispiel:
flcheck Dateien und Verzeichnisse der Softwarekomponente If Not in selection include by force flinclude Softwarekomponente
Das nächste Beispiel zeigt, wie Bereitstellungsskripten und Daten registriert werden können:
cp Predeployment-Skript $FLASHDIR/preinstall/proc.d ln -s $FLASHDIR/preinstall/order.dS55.MyApp cp Postdeployment-Skript $FLASHDIR/postinstall/proc.d ln -s $FLASHDIR/postinstall/order.dS55.MyApp
Das folgende Beispiel dient zum Anzeigen anwendungsspezifischer Daten in einem benutzerdefinierten Teil:
cp benutzerdefinierter Teil $FLASHDIR/custom_sections/MyApp
Damit der Ausgang der Installation im Zusammenfassungsteil verzeichnet wird, setzen Sie diesen Beispielcode ein:
echo "Produkt 1, Flash-Vorbereitung wurde begonnen.">>$FLASH_DIR/summary ... echo "Produkt 1, Flash-Vorbereitung erfolgreich abgeschlossen">>$FlASH_DIR/summary
#!/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 fi 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
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:
Sie müssen zeilenorientiert sein
Sie müssen mit Zeilenendezeichen (ASCII 0x0a) enden
Einzelne Zeilen können beliebig lang sein
Binärdaten sind mit einem 64-Bit- oder vergleichbaren Algorithmus zu kodieren.