Installation von Windows-Treibern von einer Netzwerkfreigabe
Verwendung von TBOSDT, enthalten auf der Image for Linux Boot-Disk
Hinweis: Dieser Artikel ist veraltet. Verwenden Sie stattdessen das OSDTOOL.TBS-Skript. Ein Beispielvideo finden Sie hier.
Übersicht
Dieses Tutorial behandelt die Installation eines Windows-Speichertreibers von einer Netzwerk- freigabe unter Verwendung der Linux-Version des TBOSDT-Programms von der Image for Linux (IFL) Boot-Disk. Die IFL Boot-Disk kann von Windows oder Linux aus erstellt werden und kann eine CD/DVD, ein USB-Flash-Laufwerk oder ein Satz von Boot-Dateien für PXE-Netzwerk-Boot (nur von Linux aus) sein.Zusätzlich zu diesem Tutorial lesen Sie bitte Anwendungsbeispiel Nr. 2 gegen Ende des TBOSDT-Handbuchs (tbosdt.pdf), wo Sie eine Beschreibung des Gesamtprozesses finden.
Ausgangs punkt
Ein typisches Szenario für die Verwendung des nachfolgenden Verfahrens ergibt sich, wenn eine vorhandene Windows-Installation (für die ein Image existiert) auf einem System wiederhergestellt werden muss, bei dem der Speicher-Controller nicht mit dem auf dem ursprünglichen System verwendeten Speichertreiber kompatibel ist. Solche Bedingungen können auftreten, wenn das Mainboard oder das gesamte System ausgetauscht wurde. Da das Zielsystem einen anderen Massenspeicher-Controller hat (z. B. einen SATA-Controller anstelle eines IDE-Controllers), wird das wiederhergestellte Image nicht booten, da der korrekte Treiber fehlt. Hier kommt TBOSDT ins Spiel.Eine Windows-Treiberinstallation mit TBOSDT erfolgt in zwei Phasen und kann durchgeführt werden, wenn Windows sich zunächst in einem nicht bootfähigen Zustand befindet. Die erste Phase (Phase 1) findet statt, wenn von der IFL Boot-Disk gebootet wird und das TBOSDT-Phase-1-Skript ausgeführt wird. Dies installiert den Treiber bis zu einem Punkt, an dem die Windows-Partition booten kann. Es bereitet außerdem die Windows- Partition darauf vor, das TBOSDT-Phase-2-Skript beim nächsten Boot automatisch auszuführen. Das Phase-2-Skript schließt dann die Treiber- installation ab.
Der Ausgangspunkt für das nachfolgend beschriebene Verfahren ist ein Image einer Windows XP-Partition, das auf dem Boot-Laufwerk (HD0) des Zielsystems wiederhergestellt wurde. Da der Treiber für den neuen Festplatten-Controller noch nicht installiert wurde, wird die Windows-Partition auf dem Zielsystem nicht booten.
Beim Wiederherstellen des Windows-Images muss sichergestellt werden, dass die wiederhergestellte Partition als aktiv gesetzt ist und dass der Standard-MBR-Code installiert wurde. Wenn Sie mit einem der TeraByte Unlimited-Image-Produkte nur eine einzelne Partition wiederherstellen, können Sie die Wiederherstellungsoptionen „Set Active“ und „Write Standard MBR Code“ verwenden, um diese Bedingungen sicherzustellen. Beim Wiederherstellen eines gesamten Laufwerks sind sie nicht erforderlich und auch nicht verfügbar.
Treiberdateien
Um generell einen Windows-Treiber mit TBOSDT zu installieren, benötigen Sie die einzelnen Treiberdateien (typischerweise eine INF-, CAT- und SYS-Datei). Idealerweise haben Sie eine Diskette (oder ein anderes Medium), die mit der Hardware geliefert wurde und die Treiber- dateien enthält. Falls nicht, müssen Sie diese vom Hardware- Hersteller beziehen. Die Treiberdateien müssen in Form einzelner Dateien vorliegen oder aus einer CAB-Datei extrahierbar sein.Dieses Tutorial verwendet das spezifische Beispiel der Installation des Treibers für den Intel SATA AHCI Controller auf einem wiederhergestellten Image von Windows XP. Dies ist der Treiber, den die meisten Benutzer benötigen, damit Windows XP auf einem neuen SATA-System läuft. Um diesen Treiber zu finden, siehe das Tutorial Erstellen einer Windows XP Slipstreamed-Disc mit nLite.
Software-Anforderungen
Image for Linux (IFL)TeraByte OS Deployment Tool Suite (TBOSDTS)
Systemanforderungen
Eine Windows- oder Samba-Netzwerkfreigabe, auf die vom Zielsystem mit Lese-/Schreibrechten über eine kabelgebundene Netzwerkverbindung zugegriffen werden kann.Wenn Sie ein USB-Flash-Laufwerk als Boot-Medium verwenden, muss das Zielsystem das Booten von einem USB-Laufwerk unterstützen.
Schritt 1: TBOSDTS herunterladen und extrahieren
Die Beispiel-TBOSDT-Skripte (drvins_1.run und drvins_2.run) sowie die Windows-Version von TBOSDT (tbosdtw.exe) werden benötigt, um die Treiberinstallation durchzuführen. Diese Dateien können durch Extrahieren des TBOSDTS-Zip-Archivs (tbosdts_en.zip oder tbosdts_pro_en.zip) erhalten werden, sodass die erforderlichen Dateien auf die Netzwerkfreigabe kopiert werden können.Bitte beachten Sie, dass die eigentlichen TBOSDTS-Programme und Unterstützungsdateien in der Datei tbosdts.zip enthalten sind, die eine sekundäre Zip-Datei innerhalb der heruntergeladenen Zip-Datei ist. Um tbosdts.zip zu extrahieren, benötigen Sie das Passwort, das in readme.txt enthalten ist, die sich innerhalb der heruntergeladenen Zip-Datei befindet.
Sobald tbosdts.zip extrahiert wurde, sind die folgenden Dateien und Verzeichnisse verfügbar:

Schritt 2: Kopieren Sie die erforderlichen Dateien auf die Netzwerkfreigabe
Es wird empfohlen, auf der Netzwerkfreigabe einen separaten Ordner/ein separates Verzeichnis anzulegen, um die für die Treiberinstallation erforderlichen Dateien aufzunehmen. In diesem Tutorial wird ein Verzeichnis mit dem Namen „tbosdtfiles“ verwendet, das sich im Stammverzeichnis einer Freigabe mit dem Namen „demo“ auf einem Server mit dem Namen „ubuntu810“ befindet.Die Dateien, die auf die Freigabe kopiert werden müssen, sind nachfolgend aufgeführt:
drvin_1.run und drvins_2.run: Kopieren Sie diese 2 Dateien aus dem Verzeichnis tbosdts/scripts. Dies sind die Phase-1- und Phase-2-TBOSDT-Skripte, und diese Dateien werden in Schritt 6 bearbeitet.
tbosdtw.exe (Windows-Version): Kopieren Sie tbosdtw.exe aus dem Verzeichnis tbosdts/win. Diese Datei ist die Windows-Version von TBOSDT.
iaahci.inf, iaahci.cat, iastor.sys: Dies sind die spezifischen Treiberdateien, die für die Installation des Intel SATA- Treibers benötigt werden, der in diesem Beispiel verwendet wird. Diese Dateien werden bei anderen Treibern anders benannt sein.
Nach dem Kopieren aller erforderlichen Dateien sollte der Inhalt des Verzeichnisses auf der Netzwerkfreigabe wie unten gezeigt aussehen:

Schritt 3: Die IFL Boot-Disk erstellen
Die IFL Boot-Disk kann von Windows oder Linux aus entweder als CD/DVD oder als USB-Flash-Laufwerk erstellt werden. Von Linux aus gibt es auch die Option, die Boot-Disk als Satz von Boot-Dateien für PXE-Netzwerk-Boot zu erstellen. Eine benutzerdefinierte Boot-Disk (die optional von Linux aus erstellt werden kann) ist nicht erforderlich.Um die IFL Boot-Disk von Windows aus zu erstellen, siehe das TeraByte Unlimited Tutorial unter dem folgenden Link:
Image for Linux First Things First – Make a Boot Disk
Um die IFL Boot-Disk von Linux aus zu erstellen, siehe das TeraByte Unlimited Tutorial unter dem folgenden Link:
How To Create IFL Boot Media From A Linux Distribution
Schritt 4: Von der IFL Boot-Disk booten und die Netzwerkfreigabe mounten
Booten Sie das Zielsystem von der IFL Boot-Disk (CD/DVD oder USB-Flash-Laufwerk). Um von einem USB-Flash-Laufwerk zu booten, muss das System-BIOS so eingestellt sein, dass von diesem Gerät gebootet wird. Einige Systeme haben möglicherweise eine Taste, die beim Booten gedrückt werden kann, um ein Menü mit Geräten aufzurufen, von denen gebootet werden kann, anstatt das BIOS-Setup aufrufen zu müssen.Sobald der Bootvorgang abgeschlossen ist, befinden Sie sich im Hauptmenü (Begrüßungsbildschirm) der IFL Boot Disk. Markieren Sie wie unten gezeigt den Eintrag „Mount/Unmount Samba/Windows shares“ und drücken Sie dann

Der Menüpunkt „Mount/Unmount“ erkennt die verfügbaren Windows-/Samba-Server und listet sie anschließend auf einem Bildschirm ähnlich dem unten gezeigten Screenshot auf. Markieren Sie dort den Server, der die Dateien enthält (in diesem Beispiel UBUNTU810), und drücken Sie dann

Geben Sie nach der Auswahl des Servers den Benutzernamen für den Server/die Freigabe ein, auf die Sie zugreifen müssen, und drücken Sie dann

Geben Sie auf dem nächsten Bildschirm das Passwort ein und drücken Sie dann erneut

Der nächste Bildschirm listet die auf dem Server verfügbaren Freigaben auf, die gemountet werden können. Markieren Sie die Freigabe, auf die Sie zugreifen müssen (demo für dieses Beispiel), und drücken Sie dann

Die Freigabe sollte nun eingebunden sein; dies wird dadurch angezeigt, dass sich der Mount-Status wie unten gezeigt von „UNMOUNTED“ zu „MOUNTED:(/net1)“ ändert :

Wenn die Freigabe nicht gemountet werden kann (oder nicht im Freigabe-Menü aufgeführt ist), liegt dies normalerweise an einem falschen eingegebenen Benutzer/Passwort. In diesem Fall können Sie zum Server-Menü zurückkehren, den Server auswählen und versuchen, Benutzername und Passwort erneut einzugeben.
Das (/net1) in Klammern ist der Mount-Point für die Netzwerk- freigabe. Der Mount-Point ist das Verzeichnis im lokalen Dateisystem, in dem auf den Inhalt der Freigabe zugegriffen werden kann. Der Mount-Point wird verwendet, wenn das Phase-1-Skript (drvins-1.run) in Schritt 6 unten bearbeitet wird. Der Mount-Point ist immer /net1, es sei denn, eine andere Netzwerkfreigabe wurde zuerst gemountet.
Wählen Sie „EXIT MENU“, um zum Server-Bildschirm zurückzukehren. Auf diesem Bildschirm sollten Sie nun wie unten gezeigt den Wert 1 bei „Total shares currently mounted“ sehen :

Wählen Sie „EXIT MENU“, um zurück zum Hauptmenü der Boot Disk zu gelangen. Markieren Sie in diesem Menü „Exit to the Linux command prompt“ und drücken Sie dann

Diese Menüauswahl bringt Sie zu einer Linux-Eingabeaufforderung. Um zusätzlich zu überprüfen, dass die Freigabe eingebunden ist und Sie nun auf Dateien auf der Freigabe zugreifen können, führen Sie den Befehl „ls /net1/tbosdtfiles“ aus. Dieser Befehl listet die zuvor in Schritt 2 in das Verzeichnis „tbosdtfiles“ kopierten Dateien auf und sollte die unten gezeigte Ausgabe liefern:

Die in Schritt 2 auf die Freigabe kopierten Dateien sind nun in der Auflistung des Verzeichnisses tbosdtfiles auf der gemounteten Freigabe zu sehen.
Schritt 5: Die Partitions-ID für die Zielpartition ermitteln
Dieser Schritt dient dazu, die Partitions-ID für die Ziel-Windows- Partition zu ermitteln. Dieser Wert wird in Schritt 1 des Phase-1-Skripts (drvins_1.run) verwendet, um sicherzustellen, dass die korrekte Partition während der Treiberinstallation gemountet wird. Das Phase-1-Skript wird in Schritt 6 unten bearbeitet, und der hier ermittelte Wert wird dann benötigt.Um die Partitions-ID zu ermitteln, führen Sie an der Eingabeaufforderung den Befehl „tbosdt“ aus, um das TBOSDT-Programm im interaktiven Modus zu starten. Führen Sie dann an der TBOSDT-Eingabeaufforderung den Befehl „list hd 0“ aus, um die Partitionen auf Laufwerk HD0 aufzulisten. Das führt zu einer Ausgabe ähnlich der folgenden:

In diesem Fall gibt es nur eine Partition auf dem Laufwerk, und sie hat eine Partitions-ID von 1, die oben in Klammern als (01) in der ID-Spalte angezeigt wird. Dieser Wert entspricht der Partitions-ID in der Standard- Kopie von drvins_1.run. Wenn die Partitions-ID etwas anderes als (01) ist, muss der Partitions-ID-Wert in drvins_1.run in Schritt 6 geändert werden.
Bitte beachten Sie, dass die Partitions-ID eine Hexadezimalzahl ist und in Hexadezimalnotation in drvins_1.run eingegeben werden sollte. Wenn beispielsweise die Partitions-ID von TBOSDT als (0B) angezeigt wird, würde dieser Wert als 0xB in drvins_1.run eingegeben (die führende Null kann weggelassen werden). Eine Partitions-ID von (2C) würde als 0x2C eingegeben.
Geben Sie „exit“ ein, um das TBOSDT-Programm zu beenden und zur Linux-Eingabeaufforderung zurückzukehren.
Schritt 6: Bearbeiten Sie die TBOSDT-Skripte auf der Netzwerkfreigabe
In diesem Schritt werden einige notwendige Änderungen an den Standard-TBOSDT Skripten (drvins_1.run und drvins_2.run) vorgenommen, die in Schritt 2 oben auf die Netzwerkfreigabe kopiert wurden. Die Dateien werden mit dem auf der IFL Boot Disk enthaltenen Texteditor „nano“ bearbeitet.Um drvins_1.run zu bearbeiten, starten Sie den nano-Texteditor mit dem Befehl „nano /net1/tbosdtfiles/drvins_1.run

Für drvins_1.run sind in diesem Beispiel die folgenden Änderungen erforderlich:
1. Kommentierung aller Zeilen aufheben, die mit einem einzelnen „;“ beginnen, außer den 3 Zeilen in Schritt 3b (16 Zeilen)
2. In Schritt 1 die Ziel-Partitions-ID auf den in Schritt 5 oben ermittelten Wert ändern (falls erforderlich)
3. In Schritt 3 den Pfad anpassen, um die Dateien von der Netzwerkfreigabe zu kopieren (3 Zeilen)
4. In Schritt 4 den Pfad anpassen, um die Dateien von der Netzwerkfreigabe zu kopieren (2 Zeilen)
Der Screenshot unten zeigt drvins_1.run im nano-Texteditor nach Durchführung der oben aufgeführten Änderungen. Die Änderungen sind eingekreist und nummeriert, um der Liste zu entsprechen.

Um Änderungen an der Datei zu speichern, verwenden Sie die Tastenkombination
Um den nano-Editor zu verlassen, drücken Sie
Um drvins_2.run zu bearbeiten, starten Sie den Nano-Texteditor mit dem Befehl „nano /net1/tbosdtfiles/drvins_2.run“.
Für drvins_2.run ist in diesem Beispiel die folgende Änderung erforderlich:
1. In Schritt 1 die Kommentierung der Zeile für den Befehl „add inf“ aufheben (1 Zeile)
Der Screenshot unten zeigt drvins_2.run im nano-Texteditor nach der Bearbeitung, mit der eingekreisten Änderung:

Um Änderungen an der Datei zu speichern, verwenden Sie die Tastenkombination
Um den nano-Editor zu verlassen, drücken Sie
Nachdem beide TBOSDT-Skripte bearbeitet wurden, kann die eigentliche Treiberinstallation beginnen.
Schritt 7: Das Phase-1-Skript (drvins_1.run) ausführen
Um das Phase-1-Skript (drvins_1.run) auszuführen, führen Sie den folgenden Befehl von der Linux-Eingabeaufforderung aus:tbosdt /net1/tbosdtfiles/drvins_1.run
Für den Intel SATA-Treiber, der in diesem Beispiel installiert wird, sieht die Ausgabe des Skripts wie folgt aus:

Wenn das Stage-1-Skript ausgeführt wird, beobachten Sie die TBOSDT-Ausgabe auf dem Bildschirm und achten Sie auf Fehlermeldungen. Typischerweise beendet TBOSDT die Skriptausführung, wenn es auf einen Fehlerzustand stößt, sodass etwaige Fehlermeldung(en) weiterhin auf dem Bildschirm sichtbar sind, auch wenn ein Teil der Ausgabe möglicherweise wegscrollt. Wenn die Ausgabe, die Sie sehen möchten, vom Bildschirm wegscrollt, können Sie wieder nach oben scrollen mit
tbosdt /net1/tbosdtfiles/drvins_1.run > dateiname
more dateiname
Für Fehlerbehebungszwecke kann es auch hilfreich sein, den Frame- Buffer-Videomodus (Option 2 im Boot-Menü) auszuwählen, wenn die IFL Boot- Disk gebootet wird. Dadurch wird mehr Text ohne Scrollen sichtbar.
Häufige Ursachen für Fehler sind:
1. Versuch, das falsche Laufwerk/die falsche Partition zu mounten (Schritt 1 in drvins_1.run)
2. Versäumnis, einen oder mehrere Befehle für korrekte Werte in drvins_1.run zu bearbeiten (siehe Schritt 6)
3. Syntax- und/oder Tippfehler in drvins_1.run
Das Phase-1-Skript muss fehlerfrei ausgeführt werden, bevor erwartet werden kann, dass das Booten von der Zielpartition erfolgreich ist.
Schritt 8: Die Zielpartition booten, um Phase 2 auszuführen
Sobald das Phase-1-Skript in Schritt 7 erfolgreich ausgeführt wurde, sollte es nun möglich sein, von der Zielpartition zu booten. Die folgende Abfolge von Schritten wird empfohlen:1. Booten Sie das System normal von der Zielpartition. Beim ersten Boot erscheint ein Terminalfenster, und das Phase-2-Skript (drvins_2.run) wird ausgeführt. Nach einer typischen Verzögerung von einigen Sekunden sollte das System automatisch neu starten. (Dies geschieht nur einmal, beim ersten Boot).
2. Starten Sie nach dem Neustart Windows wie in Schritt 3 unten beschrieben im abgesicherten Modus. Der abgesicherte Modus ermöglicht es Windows, neue Hardware zu erkennen, ohne hängen zu bleiben und/oder andere Probleme, die bei bestimmten Arten neuer Hardware auftreten können, insbesondere bei Video- Adaptern.
3. So gelangen Sie in den abgesicherten Modus von Windows XP: Während der Computer startet (direkt nach dem POST), tippen Sie wiederholt auf die „F8“-Taste; dadurch sollte das „Windows Advanced Options Menu“ angezeigt werden. Verwenden Sie die Pfeiltasten, um „Safe Mode“ auszuwählen, und drücken Sie die Eingabetaste.
Wenn
Sie nicht im abgesicherten Modus booten können, kann dies daran liegen, dass die HAL
ebenfalls ersetzt werden muss. Während die Details außerhalb des
aktuellen Umfangs dieses Artikels liegen, wird dies im Wesentlichen durch Kopieren der
korrekten Datei nach windowssystem32hal.dll durchgeführt. Die verfügbaren HAL-Dateien
(bis Win2003) sind HAL.DLL, HALAPIC.DLL, HALMPS.DLL,
HALACPI.DLL, HALAACPI.DLL, HALMACPI.DLL. Die am häufigsten benötigte Datei
für moderne Systeme ist HALACPI.DLL, HALAACPI.DLL oder HALMACPI.DLL,
die im Ordner windowsservicepackfilesi386 zu finden ist.
Sie können TBOSDT verwenden, um die Partition zu mounten und die benötigte Datei zu kopieren.
4. Sobald Sie im abgesicherten Modus sind, lassen Sie Windows die Erkennung der neuen Hardware abschließen.
5. Starten Sie neu, wenn Sie dazu aufgefordert werden.
6. Lassen Sie beim Neustart Windows normal booten. Die Treiberinstallation sollte nun abgeschlossen sein.
Bitte beachten Sie, dass WPA (Windows Product Activation) aufgrund der erkannten neuen Hardware ausgelöst werden kann, und wenn dies der Fall ist, muss Windows reaktiviert werden.
