Windows Vista
Vorbereitungen für Windows PE 2.0
Wes Miller
Kurz zusammengefasst:
- Die Imaging-Technologie von Microsoft Windows
- Treiberaktualisierungen und Wartung
- Anpassung der unbeaufsichtigten Installation
In den letzten beiden Ausgaben des TechNet Magazine wurde die Geschichte der Windows-Vorinstallationsumgebung (oder Windows PE) behandelt. Dabei ging es u. a. um verschiedene Entwurfsentscheidungen und darum, wie Sie Windows® PE heute einsetzen können. In diesem Artikel liegt der Schwerpunkt auf Windows PE 2.0, der Version, die gleichzeitig mit Windows Vista™ ausgeliefert wird. Dieser Artikel stellt keine tiefergehende Betrachtung der Arbeitsweise der einzelnen Funktionen dar. Stattdessen erhalten Sie einen Überblick über die neuen Funktionen und Fähigkeiten, die Sie in Windows PE 2.0 finden werden. Sie erhalten im Folgenden zwar einige praktische Informationen, ausführliche Abhandlungen über die Verwendung von Windows PE 2.0 werden jedoch das Thema zukünftiger Artikel sein.
Als die Arbeit an Windows Vista begann, konzentrierte sich das Windows Setup Team (dem ich damals angehörte) hauptsächlich auf das Entwickeln einer völlig neuen Installationsarchitektur, das Erstellen eines Imaging-Werkzeugs, das bei der Bereitstellung helfen soll, und auf das Ersetzen der Remoteinstallationsdienste (RIS). Aber dann verlagerte sich unsere Aufmerksamkeit auf die Interimsversion von Windows PE und Windows XP Service Pack 2 (SP2) und anschließend auf Windows Server® 2003 SP1. Das bedeutete, unsere Entwicklungsbemühungen für Windows PE in Windows Vista wurde eine Weile aufgehalten. Doch durch die zwischenzeitliche Aktualisierung von Windows PE waren wir in der Lage, einen Teil der Funktionen bereitzustellen, die wir ursprünglich für Windows PE 2.0 geplant hatten. Unsere Bemühungen waren also nicht vollständig kaltgestellt.
Bei der Definition neuer Funktionen, die wir integrieren wollten, konzentrierte sich das Windows PE-Team recht intensiv auf die Nachhaltigkeit und die typischen Anwendungsfälle des Windows PE-Benutzers (siehe „Neue Funktionen in Windows PE 2.0“ in der Randleiste). Betrachten Sie einige der neuen Schlüsselfunktionen etwas genauer.
Arbeiten mit Images
Es gibt einige Grundkonzepte, die Sie im Zusammenhang mit der Imaging-Technologie von Microsoft® Windows (WIM) und den Windows Bereitstellungsdiensten verstehen sollten. WIM wurde von Grund auf für die Bereitstellung von Windows in Form von Images entwickelt (in der Vergangenheit wurden diese als Sysprep-Images bezeichnet). WIM basiert im Gegensatz zu den meisten sektorbasierten Imagingwerkzeugen auf Dateien. Das bedeutet, WIM repliziert nicht jeden Sektor einer Festplatte, sondern erfasst jede Datei mit den dazugehörenden Metadaten (Zugriffssteuerungslisten, kurze und lange Dateinamen, usw.) und speichert die Daten in einer einzelnen Datei.
Eins der Hauptvorteile von WIM-Images besteht darin, dass in einer einzelnen WIM-Datei nicht nur ein, sondern mehrere Volumen als eine Kopie gespeichert werden können (die jeweils als Volumenimage bezeichnet werden). Unabhängig davon, wie viele Daten erfasst werden: Jede einzelne Datei wird nur einmal gespeichert. Dieser Vorgang wird als Single Instancing™ bezeichnet. Von der Funktionsweise ähnelt die Technik dem, was in den Remoteinstallationsdiensten eingesetzt wird, obwohl sich die verwendete Technologie stark unterscheidet. Das Werkzeug zum Erstellen von WIM-Images wird ImageX genannt. (Beachten Sie, dass es früher einmal als XImage bezeichnet wurde, aber der Name wurde seitdem geändert.)
Als wir Windows Vista und das neue Image-basierte Setupmodul entwickelten (das Windows PE zur Bereitstellung des Betriebssystems verwendet), erkannten wir, dass wir mithilfe einiger Tricks Platz auf dem Datenträger sparen konnten. Zu diesem Zeitpunkt waren wir nicht sicher, ob Windows Vista auf CD oder DVD ausgeliefert würde, und wir versuchten aus diesem Grund den vom Setup belegten Speicherplatz so gering wie möglich zu halten. Da die Versionen aller Dateien aus Windows PE auf CD identisch mit den Dateien waren, die sich in der direkt daneben befindlichen WMI-Datei befanden, begannen wir darüber nachzudenken, Windows PE selbst in die WIM-Datei zu integrieren und das System von dort aus neu zu starten. Dank der beeindruckenden Arbeit eines Architekts aus dem Betriebssystemteam, entstand aus unseren Ideen eine Reihe von Prototypen, die in das Produkt integriert wurde, bevor die Vorschau für Entwickler von „Longhorn“ (jetzt Windows Vista) 2003 bei der Professional Developers Conference veröffentlicht wurde. Heute befindet sich Windows PE in einer WIM-Datei (boot.wim) auf dem Speichermedium, und die Installationsmedien befinden sich in einer anderen Datei (install.wim). Obwohl „Single Instancing“ zwischen Windows PE und Windows in der Form unserer ursprünglichen Vision nicht mehr Teil des Installationsmediums ist, profitiert Windows PE auch weiterhin vom reduzierten Platz, der bei der Komprimierung auf dem Datenträger gewonnen wird. Dank der Integration der RAMDisk-Bootfunktionalität aus Windows PE 1.6 wurde auch die Fähigkeit, das Medium nach Abschluss des Bootvorgangs zu wechseln (um die ursprüngliche Boot-CD/-DVD im Anschluss an den Bootvorgang zu entfernen), hinzugefügt, da die frühe WIM-Bootarbeit abgeschlossen war.
Die Integration eines Windows PE-Image in einem WIM ist genauso einfach, wie die Verwendung von ImageX zur Erfassung der Dateien (in einem künftigen Artikel wird dieses Thema ausführlicher behandelt) und die Kennzeichnung des Image als bootfähig durch Bereitstellen des /boot-Flags für ImageX. Stellen Sie sich dies als den Bootsektor vor. Wenn die WIM-Datei vom Windows-Startmanager geladen wird, gibt die Markierung im /boot-Flag an, welches Image (wenn es mehr als eins gibt) in der WIM-Datei bootfähig ist. Beachten Sie, dass nur Windows PE von einer WIM-Datei aus gestartet werden kann. Sie können nicht das gesamte Windows Vista von einer WIM-Datei aus starten. Die WIM-Datei ist, wie eine CD oder DVD, schreibgeschützt. Deshalb können Sie nicht von einem WIM-Image von Windows PE starten und die Dateien ändern. Wenn Sie Änderungen an Windows PE vornehmen, müssen Sie die eigentliche WIM-Datei ändern.
Wissenswertes zu Laufwerken
Bei Windows PE haben wir den Massenspeichern und Netzwerkgeräten besondere Aufmerksamkeit geschenkt. Trotzdem gibt es Situationen, in denen Windows PE bestimmte neue Geräte nicht unterstützt. Windows PE 1.5 beinhaltet eine verbesserte Unterstützung beim Hinzufügen von Gerätetreibern, und diese Fähigkeit wurde in Windows PE 2.0 noch weiter rationalisiert. Alle Gerätetypen werden nun unterstützt, und sie funktionieren bereits beim Start. Programme, wie factory.exe oder drvinst.exe, sind nicht erforderlich. Wenn Sie einen neuen Gerätetreiber Windows PE 2.0 hinzufügen möchten, rufen Sie das neue Dienstprogramm peimg.exe auf, das daraufhin die Treiber hinzufügt. Die Syntax ist, wie hier dargestellt, einfach:
peimg.exe /inf drivername.inf builddirectory\Windows
Sie ersetzen einfach drivername durch den Namen der .inf-Datei (Platzhalter, wie in net*.inf sind zulässig) und ersetzen den Eintrag für builddirectory durch den Namen des Verzeichnisses, in dem das Windows PE-Image erstellt wird.
Scratch-Speicher
Ein häufiges Problem bei Anwendungen, die unter Windows PE laufen, besteht darin, das viele Windows-Anwendungen (und sogar viele Komponenten von Windows) voraussetzen, dass sie in beschreibbarem Speicher ausgeführt werden. Viele reagieren auf eine unschöne Art, wenn sie von einem schreibgeschützten Medium, wie eine CD-R, ausgeführt werden. Als ich z. B. zum ersten Mal versuchte, Microsoft Internet Explorer® unter Windows PE zum Laufen zu bringen (und es schließlich nur mit den Anwendungen MSHTA oder Microsoft HTML, Komponenten von Windows, versuchte) konnten Schlüssel-DLLs nicht registriert werden, weil sie einen beschreibbaren Speicher für bestimmte Aufgabenbereiche der Registrierung benötigen.
In Windows PE 2.0 ist dies kein Problem, weil es mittlerweile bis zu 32 MB Scratch-Speicherplatz für Schreibvorgänge des Dateisystems gibt. Daraus resultiert, dass Komponenten, die zuvor wegen der schreibgeschützten Natur von Windows PE nicht funktioniert haben, nun funktionieren, weil bei Bedarf Schreibvorgänge auf einem Datenträger durchgeführt werden können. Dies unterscheidet sich von einem RAM-Laufwerk für den Scratch-Speicherplatz (das häufig von Windows PE-Benutzern eingesetzt wird), da sich der Scratch-Speicherplatz auf demselben Volumen wie das Startvolumen befindet, im Gegensatz zu einem temporären Laufwerk.
Optionale Komponenten
Wie bei früheren Versionen von Windows PE stellt die neue Version optionale Komponenten bereit, die den Funktionsumfang erweitern können. (Natürlich steigt dadurch der Umfang an, deshalb sind sie optional.) Die Unterstützung für Windows Script Host (WSH), Windows-Verwaltungsinstrumentation (WMI) und MSHTA ist nach wie vor verfügbar. Sie können nun die Unterstützung für MSXML, die Windows Vista-Wiederherstellungsumgebung, zusätzliche Windows-Schriftarten und formelle Microsoft Data Access Components (MDAC) hinzufügen, die die frühere ADO für SQL-Unterstützung ersetzt, die nur eine teilweise Unterstützung für MDAC bot. Die wichtigste Änderung betrifft hier die Einfachheit, mit der Komponenten hinzugefügt werden können. Die Implementierung erfolgt nicht mehr über ein grobes WSH-Skript, sondern die Komponenten können bequem mit dem Dienstprogramm peimg.exe hinzugefügt oder entfernt werden. Dieses Dienstprogramm wurde bereits zuvor zum Hinzufügen von Treibern angesprochen.
Sprachpakete
Einer der ursprünglichen Grundsätze von Windows Vista lautete, das Konzept der mehrsprachigen Benutzeroberfläche (Multilanguage User Interface, MUI), das in Windows 2000 eingeführt und in Windows XP verbessert wurde, im gesamten Betriebssystem zu implementieren. In Windows 2000 und Windows XP können Sie eine andere Sprache als Englisch festlegen, aber die mehrsprachige Benutzeroberfläche selbst ist von der englischsprachigen Version des Betriebssystems abhängig. Das bedeutet, Sie können eine beliebige andere Sprache auswählen, vorausgesetzt, Englisch gehört auch dazu.
Dies wurde in Windows Vista geändert. Die Einzelheiten sollen hier nicht weiter ausgeführt werden, es muss jedoch angemerkt werden, dass diese Änderung für Windows PE von großer Bedeutung ist. Bei früheren Versionen von Windows PE gab es keine formelle Unterstützung für MUI. Die Einrichtung des Images musste aus der lokalisierten Sprachversion von Windows heraus geschehen, die schließlich vom Betriebssystem unterstützt werden sollte. Nun funktioniert das Hinzufügen oder Ändern der Sprachunterstützung auf dieselbe Weise wie für alle anderen optionalen Komponenten. Sie können mit dem Dienstprogramm peimg.exe entsprechend Ihren Anforderungen an Windows PE Sprachpakete hinzufügen oder entfernen.
Bessere Wartungsmöglichkeiten
Früheren Versionen von Windows PE fehlte auch die Unterstützung für Wartung. Wenn Sie ein Service Pack hinzufügen wollten, mussten Sie einen völlig neuen Build von Windows PE erstellen. Um einen Hotfix hinzuzufügen, mussten Sie manuell improvisieren, falls Sie sich das zutrauten. Da Windows PE klein war, nur eine begrenzte Windows-Funktionalität enthielt und nicht über einen längeren Zeitraum laufen würde, wurde das von uns nicht als ein Problem angesehen. Jedenfalls nicht bis zum berüchtigten Blaster-Sicherheitsrisiko. Da in Windows PE ein Remoteprozeduraufruf enthalten war, konnte das Sicherheitsrisiko unter den entsprechenden Umständen das System treffen und dazu führen, dass Windows PE fortwährend neu startet.
Aus diesem Grund haben wir in Windows PE 1.5 die Windows Firewall ergänzt. Anschließend bemühte sich das Team darum, sicherzustellen, dass zukünftige Versionen von Windows PE auf dieselbe Weise wie vollständige Releaseversionen von Windows gewartet werden können. Einer der Hauptbereiche, die im Zentrum der Windows Vista-Entwicklung stehen, betrifft die verbesserte Wartungsfähigkeit. In Windows PE wurden diese Verbesserungen übernommen. Und wie bei anderen optionalen Komponenten und Sprachen setzt Windows PE das Dienstprogramm peimg.exe zur Durchführung der Aktualisierungen ein. Aktualisierungen werden über das Windows Download Center bereitgestellt.
Unterstützung für die unbeaufsichtigte Installation
Sie kennen möglicherweise die Datei winbom.ini, die in früheren Versionen von Windows PE zur Steuerung der kleinen Anwendung factory.exe verwendet wurde. Beide wurden in der neuen Version ersetzt. Es gibt nun eine neue XML-Infrastruktur, mit deren Hilfe Sie Windows PE anpassen können (es handelt sich dabei um denselben XML-Mechanismus, der in Windows Vista für die unbeaufsichtigte Installation verwendet wird) und eine neue Anwendung mit der Bezeichnung wpeinit.exe.
Wpeinit.exe verwendet in Windows Vista das Standardformat unattend.xml, um Anpassungen und Aktionen für Windows PE festzulegen. Abbildung 1 zeigt ein Beispiel für die Datei unattend.xml, die Sie zur Anpassung von Windows PE verwenden können. Das Format der Datei unattend.xml wird als Teil des Windows OEM Preinstallation Kits (OPK) und des Windows Automated Installation Kits (WAIK) dokumentiert, die weiter unten behandelt werden.
Figure 1 Die Architektur der Datei unattend.xml
XML-Datei | Kommentare |
<ComputerName>MyWinPEMachine</ComputerName>
Richtet den Computernamen unter Windows PE als MyWindowsPEMachine ein. |
<Restart>Shutdown</Restart>
Fährt das System beim Neustart herunter (im Gegensatz zu einem Neustart wie bei früheren Versionen von Windows PE). |
<RunSynchronous>
<RunSynchronousCommand> <Order>1</Order> <Path>notepad.exe</Path> </RunSynchronousCommand>
Ruft notepad.exe auf. |
<RunSynchronousCommand> <Order>2</Order> <Path>cmd.exe</Path> </RunSynchronousCommand>
Im Anschluss an notepad.exe wird cmd.exe aufgerufen. |
</RunSynchronous>
<EnableFirewall>true</EnableFirewall>
Aktiviert die Windows Firewall beim Systemstart. |
<PageFile> <Size>1000</Size> <Path>C:\pagefile.sys</Path> </PageFile>
Richtet auf Laufwerk C: eine Auslagerungsdatei mit einer Größe von 1 GB ein . |
<LogPath>C:\mylog.txt</LogPath>
Protokolliert die Ausgabe von wpeinit.exe und dieses Skript in C:\mylog.txt. |
Windows-Bereitstellungsdienste
Wie zuvor angemerkt, bestand eins unserer wichtigsten Ziele in der Verbesserung der netzwerkbasierten Installation durch einen Wandel hin zu einer einheitlichen Infrastruktur, unabhängig davon, ob die Installation von CD, DVD oder dem Netzwerk aus gestartet wurde. Leider werden eine Menge zusätzlicher Aufgaben im Verlauf einer RIS-basierten Installation von Windows durchgeführt. Diese Komplexität und Redundanz sollte so weit wie möglich beidseitig entfernt werden, und aus diesem Grund wurden die Windows-Bereitstellungsdienste entwickelt.
Wie bei RIS handelt es sich bei den Windows-Bereitstellungsdiensten um eine PXE-basierte Installation. Doch im Gegensatz zu RIS wird Windows PE über das Netzwerk gestartet und nutzt dieselbe imagebasierte Installationsinfrastruktur wie bei einer herkömmlichen Installation von CD oder DVD. Gleichzeitig wird dieselbe Art der auf Unternehmen zugeschnittenen zentralen Installationsinfrastruktur bereitgestellt, die RIS seit Windows 2000 unterstützt. Es ließe sich viel zu WIM und den Windows-Bereitstellungsdiensten sagen, doch der Platz in diesem Artikel reicht dafür nicht aus. Es lohnt sich jedoch, dran zu bleiben, denn dieses Thema ist für eine der nachfolgenden Artikel geplant.
Arbeiten mit WAIK
An diesem Punkt fragen Sie sich vielleicht, wie Sie am besten mit Windows PE 2.0 beginnen sollen. Der erste Schritt besteht in der Beschaffung von WAIK. Frühere Versionen von Windows PE wurden als Teil von Windows OPK oder des Software Assurance-Mediums vertrieben. Da Windows PE 2.0 für alle Windows-Kunden verfügbar sein soll, hat Microsoft WAIK für Nicht-OEM-Kunden entwickelt.
WAIK umfasst alle benötigten Windows PE-Erstellungswerkzeuge, um Ihre eigene Kopie von Windows PE 2.0 zu erstellen. Sie können gegenwärtig WAIK als Teil von Windows Business Desktop Deployment (BDD) 2007 Beta erwerben. Neben WAIK finden Sie in BDD Anweisungen zur Verwendung von WAIK und den dazugehörenden Werkzeugen. Es steht außer Frage, die beste Möglichkeit sich mit Windows PE 2.0 und allen anderen neuen Techniken für Installation und Bereitstellung von Windows Vista vertraut zu machen, besteht darin, so schnell wie möglich mit dem Experimentieren zu beginnen.
Neue Funktionen in Windows PE 2.0
Windows PE 2.0 enthält alle Funktionen aus Windows PE 1.6 und ergänzt mehrere neue Fähigkeiten und Komponenten, einschließlich:
- Starten aus einem Microsoft Windows Imaging-(WIM-)Image heraus
- Treiberinjektion in Echtzeit mit Unterstützung für Plug- and Play
- Beschreibbarer Scratch-Speicherplatz (selbst dann, wenn von CD gestartet wird)
- Leicht ergänzbare optionale Komponenten – Microsoft Core Extensible Markup Language Services, Windows-Wiederherstellungsumgebung, Microsoft Data Access Components
- Sprachpakete
- Unterstützung für die unbeaufsichtigte Installation
- Verbesserte Dienstprogramme zum Aufbauen und Aktualisieren von Windows PE
Wes Miller arbeitet als ein Development Manager bei Pluck (www.pluck.com) in Austin, Texas. Davor arbeitete er bei Winternals Software in Austin und bei Microsoft als Programm-Manager und Produktmanager für Windows. Sie können Wes erreichen unter technet@getwired.com.
© 2008 Microsoft Corporation und CMP Media, LLC. Alle Rechte vorbehalten. Die nicht genehmigte teilweise oder vollständige Vervielfältigung ist nicht zulässig.