Unattended Installation von Windows XP - Schritt für Schritt

Einfachste Form der Unattended Installation
Hotfixes beschaffen und Installieren
Slipstreaming SP2
Postinstallation
Installation über Netzwerkshare
Remote Installation Services (RIS)
RIPREP Images


Die einfachste Form der Unattended Installation


Die winnt.sif Datei liefert die notwendigen Eingabedaten und Steuerdaten für den Ablauf der unattended Installation. Diese Datei tritt je nach Installationsart unter verschiedenen Namen und speziellen Sektionen auf:

  • als winnt.sif bei Installation durch CD/Floppy
  • mit beliebigem Namen bei Installation über winnt.exe
  • als risrndrd.sif bei RIS (Flat Image)
  • als riprep.sif bei RIS (Riprep Image)
  • TIP: es wird immer die gleiche(alle Fälle umfassende) Datei verwendet. Die nicht aktuellen Einstellungen/Sektionen werden ignoriert!


Der SETUP Manager bietet zur Erstellung der Winnt.sif Datei eine erste Hilfe, schöpft aber die Möglichkeiten bei weitem nicht aus. Dazu ist im Detail die Lektüre der entsprechenden Preinstallation Reference notwendig. Ergänzend gehören noch die Deployment Tools dazu.








Hierzu gibt es in der MS Knowledge Base einen Artikel OEM-Plug & Play-Treiber zu Windows XP hinzufügen (314479).

Ehe wir jetzt zum wichtigen Punkt Postinstallation kommen, müssen wir die der unattended Installation zugrunde liegenden WIN XP Installations CD durch Integration des aktuellen Service Packs (SP2) und der aktuellen Hotfixes auf den letzten Sicherheitsstand bringen. Dies muss geschehen sein, bevor der frisch installierte Rechner ans Netz geht. Innerhalb von Sekunden kann er wegen fehlenden Hotfixes "verseucht" werden.





Detaillierte Informationen hierzu auf der Microsoft Support Seite.



Hierzu die beiweitem beste Anleitung.

Zu einer vollständigen unattended Installation gehört neben der Konfigurierung des Erscheinungsbildes des installierten Betriebssystems, was typischerweise durch Registry Tweaks geschieht, vor allen Dingen die Installation von Softwarepaketen. Folgende grundsätzliche Möglichkeiten gibt es:



 
Einige Beispiele sollen das Prinzip verdeutlichen


 
Für die unattended Installation von Software (Postinstallation) wird hier in Kürze eine Sammlung von bereits existierenden Paketen angeboten werden, wobei insbesondere die ZEDAT Beiträge hierzu aus der Desktop4All Entwicklerecke zugesagt hat. Bei freier Software ist dies problemlos. Bei lizenzpflichtiger Software werden wir uns noch ein praktikables Verfahren überlegen.

Der nächste Schritt, um die Unattended Installation weiter zu automatisieren, ist das Kopieren der Installations- CD auf einen Netzwerkshare. Dazu gibt es ein Programm winnt.exe (läuft unter DOS) bzw. winnt32.exe (>Windows98), das die Installation von einem Netzwerkshare erlaubt und das im i386 Ordner der Installations-CD liegt. Winnt32.exe erlaubt auch Updates, winnt nur komplette Installationen. Wir beschränken uns hier auf die DOS Version winnt.exe. Es gibt zwei Vorgehensweisen, um für die Installation auf den Netzwerkshare zugreifen zu können:

  • Start eines DOS Diskette mit Netzwerk auf dem Clienten

  • Starten eines netzwerkfähigen DOS Images über Netzwerk bei PXE fähigen Clienten


Das Bootimage (2.88 Mbyte) verwendet als Grundlage das BootDisk Projekt und beinhaltet etwa 100 DOS Netzwerktreiber, die auch relativ einfach ergänzt werden können. Das Programm PCIScan erkennt die Netzwerkkarten (auch mehrerer)und lädt automatisch die Netzkartentreiber bzw. fragt bei mehreren Netzwerkkarten über ein Auswahlmenü bei mehreren Karten.An dieser Stelle kann die Netzwerkkarte ohne Problem gewechselt werden. Das Image verwedet aus Platzgründen CAB Dateien, die auf einer Memorydisk wieder extrahiert werden.
Um von einem Netzwerkserver zu booten, wird als Infrastruktur PXELinux verwendet.

Ist das netzwerkfähige DOS System auf dem Client gebootet und kann auf den Netzwershare auf dem Server zugreifen, können hier auch alle DOS Programme hinterlegt sein, die vor dem Installationsstart noch gebraucht werden, insbesondere GDISK zur Partitionierung der Festplatte (wegen der Steuerung über Switches) und oformat aus den Deploy Tools zur optimalen Formatierung für die spätere NTFS Konvertierung (oformat c: /a:8).
Nachdem die Clientenfestplatte partitioniert (DOS muss danach neu gebootet werden) und formatiert ist, beginnt die eigentliche Installation, die auf dem Netzwerkshare den \i386 Ordner und smartdrv.exe voraussetzt.
 

  • cd z: (Netzwerkshare)
  • smartdrv
  • \i386\winnt /rx:lang /s:\i386 /u:unattend.txt

Im nächsten Bild ist die Architektur der Unattended Installation dargestellt. Charakteristisch sind die 3 typischen Phasen der Installation. Dabei ist für die Installation über Netzwerkshare (winnt.exe)eine Zwischenstufe (siehe Folderstruktur im oberen linken Teil des nächsten Bildes)notwendig, aus der heraus dann ein "Mini"windows gestartet wird. Danach ist der Verlauf mit der CD Installation identisch.
 

  • Data Collection Stage - kopiert die Daten vom Netzwerkshare mit Hilfe von Winnt.exe auf die erste verfügbare Partition unter Berücksichtigung der DOS 8.3 Namenskonvention

  • Textmode Stage

  • GUI Mode Stage



RIS (Remote Installation Services)


Da es sich bei RIS um die "Bordmittel" zur automatischen Installation von Microsoft handelt, sei an dieser Stelle insbesondere auf den folgenden Grundsatzartikel zu RIS hingewiesen, der das Thema mehr oder weniger erschöpfend abhandelt.



 
Deshalb möchte ich mich hier auf einige Praxistips beschränken:

  • Wir betreiben neben der unattended Installation über Netzwerkshare auch eine RIS basierende unattended Installation, um einfach im Fehlerfall zwischen den beiden Installationarten umschalten zu können. Der Mehraufwand für die Installation einer RIS basierenden Installation ist relativ gering, vorausgesetzt man kennt RIS.
    Pflege der Installationsordner und die Postinstallation sind identisch.
     

  • Da RIS nach dem Start über PXE auf SMB basierenden Netzwerkzugriff umschaltet, müssen die entsprechenden Netzwerktreiber im \i386 Ordner vorhanden sein. Achtung: Die auf der Originalinstallations-CD vorhandenen Inteltreiber (PRO100/1000) sind für RIS wegen eines Fehler im ini File nicht brauchbar und müssen ersetzt werden!!
     

  • Nur Prestaging benutzen, da sonst der Proxy DHCP (BINL Service) sich bei jedem Client meldet, der im Netzwerk gestartet wird. Alle anderen Verfahren wie z.B. DHCP/TFTP funktionieren dann nicht mehr (dies ärgert in unserem Fall insbesondere die Linux FAI (Fully Automated Installation) Nutzer). Der Mehraufwand besteht darin, den PXE Client im ADS mit seiner GUID {00000000-0000-0000-0000-000A5E1D452A} als Identifikation einzutragen.
    TIP: Wenn man den Clienten über PXE kurz anstartet und sich über den entsprechenden Setup Screen im ADS einloggt, findet man im RIS Basisordner auf dem RISserver unter /tmp die Kopie der ristndrd.sif Datei (Name der Konfigurationsdatei für die unattended Installation unter RIS) unter dem Namen GUID.sif.
     

Die folgende Folie zeigt noch einmal im Vergleich den Ablauf der unattended Installation über Netzwerkshare und RIS



RIPREP Images vs. Flat Images



Der Vollständigkeit halber soll hier auch noch die Möglichkeit von RIS erwähnt werden, Images (RIPREP) von der Systempartition zu erstellen und zu verteilen. Im Gegensatz zur unattended Installation (FLAT Image)geht die RIPREP basierende Installation von einem komplett installierten System aus, das praktisch "entkernt" wird (SID, Lizenzen etc)und anschließend als Image mit entsprechendem Minisetup installiert werden kann. Vorteil ist zweifellos die Zeitersparnis.
Nachteil sind aber die üblichen Probleme, die vom Clonen her bekannt sind. Bei (weitgehend) identischer Hardware (z.B. in CIP Pools mit vielen identischen Rechnern) ist diese Verfahren schon aus Zeitgründen unbedingt vorzuziehen. Benutzt man bei der Verteilung des Images über Netzwerk auf viele Rechner das Multicastverfahren, so kann man im Prinzip eine beliebige Anzahl von Clients in weniger als einer Stunde komplett installieren.
Bemerkung in eigener Sache: Wir haben bei unserem "Hardwarezoo" keine guten Erfahrungen mit Riprep Images gemacht (unsere Rechnerpools werden unter Linux betrieben). Von daher haben wir auch nicht sehr viel Erfahrungen mit diesem Verfahren gesammelt, das zweifellos noch erheblich optimiert werden kann (siehe den Vortrag aus Mathe/Informatik). Die Installation ohne jede Unterbrechung stand einfach im Vordergrund. Der Zeitfaktor ist für uns zweitrangig.