Aus Linux-Magazin 10/2009

Linux fürs Windows-Deployment (Seite 4)

Optional übermittelt Opsi seine Meldungen auch an einen Syslog-Server. Wenn er die Softwarepakete erzeugt, kann der Admin darüber hinaus eigene Logeinträge einfügen. Bereits im Zuge der Opsi-gesteuerten Windows-Installation übers Netzwerk entstehen ebenfalls Logdateien am Server wie am Client.

Für Enterprise-Umgebungen unterstützt Opsi auch den Einsatz und das zentrale Konfigurieren mehrerer so genannter Depotserver zur Software-Installation, beispielsweise für mehrere Firmenstandorte. Solche Setups scheinen aber nicht ohne Probleme zu sein, jedenfalls rät der Hersteller dazu, diese nur im Rahmen eines Supportvertrags durchzuführen.

Installationssteuerung mit eigener Skriptsprache

Beim Windows-Start ruft der lokale Opsi-Dienst ein Programm namens »Winst.exe« auf, das die jeweiligen Pakete installiert (Abbildung 6). Ein fertiges Opsi-Paket besteht aus den ausführbaren Dateien, einigen Metadaten sowie je einem Skript für Installation, Update und Deinstallation.

Abbildung 6: Eine Statusanzeige begleitet die Opsi-Skript-gesteuerte Installation der einzelnen Programme.

Abbildung 6: Eine Statusanzeige begleitet die Opsi-Skript-gesteuerte Installation der einzelnen Programme.

Die Installationssteuerung ist in einer speziellen, semantisch umfangreichen Skriptsprache verfasst, die ein eigenes Installationshandbuch und eine Referenzkarte auf der Opsi-Webseite nebst Information zu verschiedenen Installationsprogrammen ausführlich dokumentieren [22]. Zum Einstieg eignet sich eine mit Opsi mitgelieferte Vorlage. Auch das erwähnte Wiki [21] mit seinen vielen Beispielskripten hilft dabei, das Konzept zu verdeutlichen.

Die Skriptsprache unterstützt alle Installationsvarianten, also Snapshot, Silent, Skript-basiert und simulierte Tastatureingaben, sodass unabhängig vom zu installierenden Programm die zugrunde liegende Sprache unverändert bleibt. Die Dateien sind ähnlich aufgebaut wie Windows-INI-Dateien, das heißt, sie sind in Sektionen unterteilt.

Opsi unterscheidet zwischen einer primären Sektion, die den grundlegenden Ablauf des Skripts und das Laufzeitverhalten von Winst steuert, und mehreren von dort aufgerufenen sekundären Sektionen (siehe Beispiel in Listing 1). In einer sekundären Sektion stehen Anweisungen, die wiederum in Funktionen ausgelagert sein oder aus externen Quellen stammen dürfen, beispielsweise einem Programm oder einem inkludierten Skript.

Listing 1: Skript zur
Tight-VNC-Installation

01 [Initial]
02 Message=installiere tightvnc 1.2.9 ......
03 
04 [Aktionen]
05 ; Starte AutoIt als Hintergrund-Prozess, um
06 ; Fenster abzufangen, das erscheint, wenn
07 ; tightvnc während der Installation als Service
08 ; läuft.
09 winbatch_tightvnc_autoit_confirm /LetThemGo
10 ; starte das setup Programm als silent setup
11 winbatch_tightvnc_silent_install
12 
11 [winbatch_tightvnc_autoit_confirm]
12 %SCRIPTPATH%autoit %SCRIPTPATH%confirm.aut
13 
14 [winbatch_tightvnc_silent_install]
15 %SCRIPTPATH%tightvnc-1.2.9-setup.exe /silent

Umfangreiche Syntax

Die Opsi-eigene Skriptsprache stellt Bedingungen (»if« und »else«), »for«-Schleifen und Stringlisten bereit, um den Ablauf der Installation von bestimmten Eigenschaften abhängig zu machen. Hinzu kommen belegbare Variablen, fertige Funktionen und globale Konstanten. Mit Letzteren lassen sich beispielsweise Systempfade, Laufwerksbuchstaben, Betriebssystemversionen, Umgebungsvariablen und Netzwerkeinstellungen im Skript referenzieren. Den Wert der globalen Konstanten ermittelt der Opsi-Dienst dann automatisch zur Laufzeit.

Der Code innerhalb der sekundären Sektionen kann vielfältige Änderungen am System durchführen, beispielsweise Dateien und Verzeichnisse kopieren oder Löschen, Registry-Einträge editieren sowie Verknüpfungen auf Startmenüs und Desktops anlegen und entfernen. Ebenfalls möglich ist es, externe Programme per Windows-API oder »cmd.exe« aufzurufen sowie das Zielsystem neu zu starten – und das auch in Abhängigkeit von Dateiversionen, Betriebssystem, Sprache, freiem Speicherplatz oder anderen Faktoren.

Der Admin darf auch das Erscheinungsbild seines Opsi-Dienstes mit eigenen Installationsmeldungen sowie Grafiken anpassen. Selbst das Neustartverhalten kann er im Skript beeinflussen. Für die zentrale Konfiguration von Software liefert die Opsi-Skriptsprache zudem Funktionen zum Patchen von Dateien, wobei sie mit INI-, Hosts-, XML-, BDE- und Mozilla-Konfigurationsdateien sowie Textdateien zurechtkommt.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 4 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben