Unbeaufsichtigte Installation (Windows)

Bei einer unbeaufsichtigten Installation (englisch unattended installation) wird das komplette Setup eines Programms oder einer Installationsroutine durchlaufen, ohne dass währenddessen Eingaben des Benutzers erforderlich sind. Der Begriff selbst ist außerhalb von Windows nur von marginaler Bedeutung, da Installationsroutinen, welche während des Ablaufs Benutzereingaben erfordern, in anderen Betriebssystemen unüblich sind. Außerdem haben automatisierte Installationsmechanismen[1] unter HP-UX, Solaris, Linux oder AIX eine lange Tradition. Anwendung findet diese Form der Programminstallation seit Windows 2000 und Windows XP in Verbindung mit Slipstreaming (der Integration von Microsoft Service Packs ins Installationsmedium) sowie der Möglichkeit seit Windows-NT-Zeiten, die Installation des Betriebssystems selbst durch eine „Setup-Installations-Datei“ (SIF) zu automatisieren.

Eingaben während der Installation, etwa des gewünschten Installationspfades, eines eventuell benötigten Lizenzschlüssels oder die Quittierung von Bestätigungen, entfallen bei einer unbeaufsichtigten Installation, da diese Einstellungen zuvor zum Beispiel in einem Skript (einer sogenannten Antwortdatei) oder mit einem bestimmten Kommandozeilenparameter festgelegt werden. Die Installationszeit verringert sich in den meisten Fällen merklich, da nicht auf Eingaben gewartet wird und somit mehrere Installationen hintereinander weg ausgeführt werden können. Wenn die gleiche Software auf mehreren Computern installiert werden soll, kann durch diese Automatisierung der Installation erheblich Zeit gespart werden, da diese zuvor einmal konfiguriert, beliebig oft und im Gegensatz zum Speicherabbild auf unterschiedlichsten Systemen durchgeführt werden kann, ohne weitere Arbeitszeit zu beanspruchen.

Darüber hinaus wird beim Vertrieb neuer Computer ebenfalls die unbeaufsichtigte Installation verwendet. Im Gegensatz zu einer Full Unattended Installation wird hier jedoch ein spezieller Modus verwendet. Damit können die OEMs zwar alle Computer mit der gleichen Software und Einstellung installieren, dem Käufer wird es aber ermöglicht, bei der ersten Inbetriebnahme des Computers Daten wie seinen Namen, die Uhrzeit und die Seriennummer im letzten Teil des Setups einzugeben und somit die Installation zu individualisieren.

Installation eines kompletten Betriebssystems

Per Skript

Neben der Möglichkeit, einzelne Programme automatisiert zu installieren, kann das komplette Betriebssystem vorkonfiguriert werden. Dabei können sämtliche Einstellungen des Systems (Benutzerkonten, Desktop-Hintergrund, Netzwerkeinstellungen etc.) in einem Skript vorher abgelegt werden. Durch ein Batch-Skript werden so zum Beispiel direkt bei der Installation des Betriebssystems weitere Softwareanwendungen oder auch Treiber installiert, die standardmäßig nicht im Lieferumfang der Windows-CD enthalten sind.

Nachdem der komplette Ablauf einmal konfiguriert wurde, lässt sich das System sehr leicht warten respektive aktualisieren.

Vor allem in größeren Firmen, wo die Computer in der Regel hardwaremäßig nicht gleich sein werden, eignet sich diese Methode. Es muss nicht jeder PC einzeln betreut werden, denn jeder Computer arbeitet selbstständig das vorgefertigte Skript ab.

Per Speicherabbild

Windows ermöglicht es außerdem mittels der Datei 'SYSPREP.EXE' (auf der Windows-CD enthalten) einen komplett installierten PC vorzubereiten, so dass man ihn mit einer Speicherabbild-Software auf einen anderen Computer übertragen kann. Vor allem beim Aufbau neuer Abteilungen oder als Vorbereitung für Schulungen, in denen mehrere gleiche Computer neu installiert werden müssen, eignet sich diese Methode.

Vorteile

Vorteilhaft ist dabei vor allem die Zentralisierung. Werden die Daten der unbeaufsichtigten Installation aktualisiert, etwa neue Hotfixes integriert, so erhalten bei einer Neuinstallation sämtliche Computer bereits die letzten Aktualisierungen, sodass die bis dato bekannten Sicherheitslücken geschlossen sind.

Weitere Sicherheit wird dadurch erzielt, dass sämtliche sicherheitsrelevanten Aspekte vor der Installation der Computer entschieden und dann in ein Skript umgesetzt werden können. So können zum Beispiel die nötigen Installationen automatisch als Administrator ausgeführt werden, während dem Benutzer für den Betrieb dann aber nur der eingeschränkte User zur Verfügung steht.

Daher eignet sich diese Methode nicht nur für Firmen, sondern ist auch für den Heim-PC empfehlenswert, da ohne neueste Aktualisierungen der Computer beim ersten Kontakt mit dem Internet durch Viren infiziert werden könnte, siehe W32.Blaster.

Installation von einzelnen Programmen

Zur unbeaufsichtigten Installation der Programme gibt es verschiedene Möglichkeiten. Jedes dieser Verfahren bietet im Einzelfall abzuwägende Vorteile und Nachteile.

Durch Parameter

Viele, jedoch nicht alle Programme lassen sich durch spezielle Kommandozeilenparameter vorkonfigurieren.

Allgemeine Syntax:

 installationsdatei.exe <parameter1> <parameter2> <parameterN>

Oft können die zur Verfügung stehenden Parameter über den Aufruf dateiname.exe /?, dateiname.exe -? (oder statt ?, help eingeben) angezeigt werden. Alternativ stehen die benötigten Informationen eventuell in der Dokumentation des Programmes direkt, oder lassen sich aus der Erkenntnis über den verwendeten Windows Installer erschließen. Häufig lässt sich zum Beispiel durch den Schalter /silent, /s, /quiet oder /q eine Installation starten, bei der das Programm ohne weitere Konfiguration während des Setups auf die Festplatte installiert wird. Wichtig ist hierbei auf die Groß- und Kleinschreibung des jeweiligen Parameters zu achten, nicht immer greift ein klein geschriebener Parameter (Bsp.: 7-Zip [7z465.exe /s]), sodass der Parameter /S für Silent zwingend groß geschrieben werden muss, um von der Applikation auch erkannt und durchgeführt werden zu können.

Jedoch kann die Installation durch Parameter meist kaum konfiguriert werden. Neben der Option zur unbeaufsichtigten Installation sowie dem Installationspfad können nur selten weitere Konfigurationen durch die Schalter eingestellt werden. Sollen weitere Optionen des Programms voreingestellt werden, so kann dieses durch zusätzlich Windows-Registrierungsdatenbank-Einträge realisiert werden, sofern man die entsprechenden Einträge kennt. Weitere Informationen sind bei Softwareverteilung sowie den unten aufgeführten Guides nachzulesen.

Durch Windows-Installer-Schalter und MST-Vorgaben

Bei der Windows-Installer-Technologie (Dateinamen mit MSI-Endung) lassen sich sämtliche Parameter vorgeben, entweder durch Angabe via Kommandozeilenparameter (zum Beispiel: „INSTALLLEVEL=100 REBOOT=ReallySuppress“), oder durch Sammlung dieser in einer sogenannten Transform-Datei (MST-Endung). Die MST-Dateien sind dabei in der Lage, sämtliche Tabellen in der MSI-Datenbank zu überschreiben, um so zum Beispiel die genaue Auswahl der zur Installation gewünschten Komponenten bestimmen zu können. Ab Windows 2000 werden MSI-Dateien für die Verteilung von Software innerhalb einer Domäne nativ unterstützt (IntelliMirror-Feature), aber auch das Starten über eine Batchdatei ist möglich:

msiexec.exe /i <.msi-Datei> /qb- INSTALLLEVEL=300 REBOOT=ReallySuppress /L*v C:\Installationslog.log

Bei obigem Beispiel wird auch eine Log-Datei erzeugt, die dann zur detaillierten Kontrolle über Erfolg oder Misserfolg der Installation herangezogen werden kann. .msi-Dateien unterstützen ebenfalls das Slipstreaming, wenn die Aktualisierungen als sogenannte MSI-Patchdateien (.msp-Endung) herausgegeben werden. Mit dieser Technologie wird das Installationspaket selbst auf den neuesten Stand gebracht, d. h. es wird bei der Installation der aktualisierten Version nicht mehr erst die alte Version der Dateien installiert und dann auf das neueste gepatcht, sondern direkt die neuesten Versionen der Dateien und Registrierungsdatenbankschlüssel geschrieben. Auch die Aktionen sowie eventuelle Dialoge selbst, die das Installationspaket zusätzlich macht, sind aktualisierbar.

Durch Snapshots

Des Weiteren kann ein Snapshot-Programm alle Daten und Registrierungsdatenbankänderungen aufnehmen, die ein Programm bei der Installation erzeugt/verändert, so dass diese lediglich für die unbeaufsichtigte Installation auf die Festplatte kopiert werden müssen.

Das Snapshot-Verfahren lässt bei komplexen Produkten eine gewisse Unsicherheit, ob das erstellte Paket unter allen Umständen so installiert ist, wie es der Original-Installer des Softwareherstellers getan hätte. Viele Software-Firmen lehnen daher Support für Software-Fehler, die bei snapshot-paketierten Clients auftreten zunächst ab, und verlangen eine Verifizierung mit einer manuellen Installation.

Voraussetzung ist auf jeden Fall, dass auf dem Rechner, auf dem der Snapshot gemacht wurde, keine Komponenten vor der Installation installiert waren, die bei den Clients dann fehlen und von der Installation gebraucht werden.

Durch Skripte

Skripte speichern die hintereinander auszuführenden Tastatur- und Mauseingaben (zum Beispiel Tab,Tab,Tab,"C:\Program1",Enter). Dadurch lässt sich die Konfiguration der Installation genau planen und einspeichern.

Bietet die Software keine eigene Möglichkeit zur automatisierten Installation, können daher die zu tätigenden Eingaben zum Beispiel durch ein WSH-, VBS-Skript oder autoitscript[2] oder den Ableger Autohotkey[3] realisiert werden.

Bei der „automatisierten manuellen Installation“ treten daher Probleme auf, wenn unvorhergesehene Fenster auftauchen, die nicht im Skript vorgesehen worden sind. Ein Unterschied ist auch, dass Snapshot-Installationen teilweise durchgeführt werden können, ohne dass auf dem Client die Arbeit unterbrochen werden muss. Diese Vorgehensweise ist bei manuell getriebenen Installationen nicht sinnvoll, da Tastatureingaben und Mausklicks des Anwenders mit denen des Skripts in Konflikt geraten würden.

Realisierung

Zum einen ist es möglich, die zusätzlichen Daten auf einem separaten, beliebigen Speichermedium, etwa auf einem Dateiserver oder einer Diskette/CD bereitzustellen. Zum anderen können die Skripte sowie die zusätzlichen Programme/Treiber direkt auf einer Windows-Installations-CD integriert werden.

Da zur Erstellung einer Unattended-CD eine gewisse Einarbeitungszeit notwendig ist, vor allem wenn dabei neue Treiber integriert werden sollen, entstanden in jüngster Zeit mehrere Programme zur Unterstützung bei der Erstellung einer unbeaufsichtigten Installation (siehe weitere Programme). Diese bieten neben einer einfacheren Konfiguration meistens noch weitere Ergänzungen rund um das Windows-System (etwa eine Minimierung der Installationsdaten).

Erstellt man jedoch ein Skript komplett selbst, siehe Weblinks, so empfiehlt es sich zu überprüfen, ob die im Skript konfigurierten Voreinstellungen richtig gewählt wurden. Stimmen etwa einige Parameter nicht, so ist der reibungslose Ablauf nicht mehr gewährleistet, die Installation würde an einem Punkt hängen bleiben, da sie eventuell auf eine Benutzereingabe wartet. Man müsste daher die Installation abbrechen und kann die Fehler im Skript nicht beseitigen, da ja nun auf dem PC nicht gearbeitet werden kann.

Steht kein weiterer Computer zur Verfügung, auf dem die Installation getestet werden kann, so empfiehlt es sich daher die komplette Installation vorher mittels eines Speicherabbildes erstmal zu emulieren.

Programme, die eine Unattended CD für Windows erstellen

  • nLite – Zum Erstellen von Windows 2000, XP und Server 2003
  • vLite – Zum Erstellen von Windows Vista, Server 2008 und Windows 7
  • XPlode

Siehe auch

Literatur

Tiefere Einblicke in den genauen Ablauf einer Windows-Installation:

  • Microsoft Windows 2000 Professional. Die technische Referenz, ISBN 3-86063-274-4
  • Microsoft Windows XP Professional – Die technische Referenz (Technische Informationen und Tools für Windows XP SP2), ISBN 3-86063-960-9 (siehe auch Link [1])

Weblinks

Einzelnachweise

  1. http://linuxwiki.de/AutomatisierteInstallation
  2. autoitscript
  3. Autohotkey