Computerwissen.xobor.de stellt IT Fachwissen online Web
Analytics View My Stats
#1

NTLDR fehlt or NTLDR is missing

in Windows XP Codename Whistler Fri Jul 15, 2011 6:08 pm
by Interface | 26 Posts | 132 Points

NT-Loader, kurz NTLDR, ist der Bootmanager von Microsoft für alle Windows-NT-Systeme bis einschließlich Windows Server 2003. Seine Konfiguration liest er aus der Textdatei „boot.ini“. Sie ist nötig, da die Windows-Registrierung erst nach dem Start des Betriebssystems zur Verfügung steht. Sie ermöglicht zudem das Editieren auch außerhalb von Windows. NTLDR wurde ab Windows Vista vom Bootmgr abgelöst.

Funktion und Verwendungszweck

Die Konfigurationsdatei liegt neben den Dateien „ntldr“ und „ntdetect.com“ sowie ggf. „ntbootdd.sys“ und „bootsect.dos“ im Wurzelverzeichnis der aktiven Primärpartition (normalerweise „C:\“) und unterscheidet sich in den möglichen Parametern je nach Windowsversion.

Dieser Bootmanager ist notwendig geworden, da Windows NT keinen DOS-Kern mehr besitzt und vor dem Start von Windows eine Möglichkeit geschaffen werden muss, das Startverhalten über Parameter zu beeinflussen. Da die DOS-basierenden und die NT-Windowssysteme funktional höchst unterschiedlich sind sollte zudem auf diesem Weg die Möglichkeit geschaffen werden, verschiedene Windowsversionen parallel zu betreiben.

Ein früher sehr häufiges Dualbootszenario ist der klassische Parallelbetrieb von Windows 95 oder 98 und Windows NT 4.0. Da dieses Betriebssystem wenig Multimediaunterstützung aufwies und kein Plug & Play unterstützt und deshalb auch USB und Firewire nie implementiert wurden, war es sinnvoll, für die tägliche Arbeit der Stabilität wegen Windows NT zu verwenden, zum Scannen oder für Multimediaanwendungen Windows 95 oder 98 zu starten. Diese Kombination ist auch für den Laien einfach und sollte am besten auf getrennten Partitionen erfolgen.

Aufbau der boot.ini

Die „boot.ini“ ist die Konfigurationsdatei des Bootmanagers „ntldr“. Diese Datei ist nötig, da die Windows-Registrierungsdatenbank erst nach dem Start des Betriebssystems zur Verfügung steht.

Beispielkonfiguration
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
[operating systems]

multi(0)disk(0)rdisk(1)partition(1)\WINNT="Windows NT Workstation, Version 4.0"
multi(0)disk(0)rdisk(1)partition(1)\WINNT="Windows NT Workstation, Version 4.0 [VGA-Modus]" /basevideo /sos
C:\="MS-DOS"
C:\bootsect.deb="Ubuntu"
[boot loader] leitet die Konfigurationsdatei ein timeout=xx gibt die Zeit in Sekunden an, welche gewartet wird, bis das voreingestellte Betriebssystem gestartet wird, falls mehrere Einträge vorhanden sind (Standardwert: 30) default=xx gibt das Standard-Betriebssystem an, welches gestartet werden soll [operating systems] ab hier werden die einzelnen Einträge der Betriebssysteme aufgeführt;

es können mehrere der folgenden Einträge aufgeführt werden multi(0)disk(0)rdisk(1)partition(1)\Windows-Verzeichnis="Text im Bootmenü" [Optionen…] startet eine Windows-Installation über das System-BIOS (INT 13) scsi(c)disk(d)rdisk(l)partition(p)\Windows-Verzeichnis="Text im Bootmenü" [Optionen…] startet eine Windows-Installation über einen expliziten Treiber signature(c)disk(d)rdisk(l)partition(p)\Windows-Verzeichnis="Text im Bootmenü" [Optionen…] startet eine Windows-Installation über einen expliziten Treiber C:\="MS-DOS" bietet einen Systemstart unabhängig vom „ntldr“ an (hier: Systemübergabe an die DOS-Startdateien über deren als „bootsect.dos“ neben der „boot.ini“ gespeicherten Bootsektor), was in der Regel nur für DOS, DOS-basierende Windowssysteme und nicht Microsoft-Systeme in Frage kommt C:\bootsect.deb="Ubuntu" bietet einen Systemstart unabhängig vom „ntldr“ an (hier: Systemübergabe an die Startdateien eines Linux über deren als „bootsect.deb“ neben der „boot.ini“ gespeicherten Bootsektor)

Erläuterung zum Beispiel: Den Start von Windows NT (Startverzeichnis hinter den Partitionsangaben) übernimmt der Bootloader bis zum Laden der Startdateien und Treiber direkt, für ein DOS oder DOS-basierendes Windows übergibt der Bootloader diese Arbeit an die DOS-Startdateien, auf die der folgende Eintrag verweist. Je Partition lassen sich aber jeweils nur ein DOS- und ein NT-System starten, fremde Betriebssysteme wie Linux oder Netware werden offiziell nicht unterstützt. Ebenso erfordert das Installieren mehrerer NT-Systeme oder mehrerer Windows 3.x/9x-Versionen auf demselben Rechner ein tieferes Fachwissen über das Verhalten und die technischen Anforderungen der verschiedenen Windowsversionen und ist nicht ohne manuelle Eingriffe möglich.

NTLDR startet von Festplatte oder Diskette ohne den Master Boot Record zu ändern, im Gegensatz zu einigen anderen Bootloadern z. B. unter Linux. Anspruchsvollere Konfigurationen lassen sich besser und bequemer (oder überhaupt erst) mit Bootmanagern anderer Hersteller und Partitionierungsprogrammen erledigen. Ein völliger Ersatz für NTLDR sind sie aber nicht, da er zum Laden der Startdateien fest ins NT-System eingebunden ist. Es ist mit den meisten Bootmanagern (z. B. GRUB und LILO für Linux) meist problemlos ein Parallelbetrieb möglich.

Lokalisieren der Bootpartition

Starten über das System-BIOS (INT 13)

multi(0)disk(0)rdisk(d)partition(p)\Windows-Verzeichnis="Text im Bootmenü" [Optionen…]

d ist logische Nummer der Disk aus BIOS-Sicht. 0 für die erste Platte (0x80), 1 für die zweite Platte (0x81) etc.. Das hat nichts mit Master, Slave oder SCSI-ID zu tun. Bei 3 ist üblicherweise Schluss.

p ist die Nummer der Partition auf der Platte. Die erste primäre Partition ist 1. Danach folgen alle weiteren primären Partitionen gefolgt von den erweiterten. Die Erweiterungspartitionen selbst (Typ 0x05 und 0x0F) zählen nicht mit.

Windows-Verzeichnis ist das %SystemRoot% der betreffenden Installation ohne Laufwerksbuchstabe.

Optionen siehe unten.

Starten über einen expliziten Treiber

scsi(c)disk(d)rdisk(l)partition(p)\Windows-Verzeichnis="Text im Bootmenü" [Optionen…]

Für diese Variante muss sich die Datei „ntbootdd.sys“ im Hauptverzeichnis der Startpartition befinden - also da, wo auch die „boot.ini“ ist. Diese Datei muss eine (umbenannte) Kopie des zum Ansprechen der gewünschten Festplatte erforderlichen Treibers aus %SystemRoot%\System32\Drivers\ sein. Bei IDE-Platten ist das üblicherweise „atapi.sys“, es sei denn, der verwendete Kontroller bedarf eines herstellerspezifischen Treibers (bei SCSI immer).

c ist die Nummer des zu verwendenden Kontrollers, beginnend mit 0. Also z. B. 0 für den ersten IDE-Kanal. Es zählen dabei nur die Kontroller, die von dem jeweiligen Treiber unterstützt werden. d ist die ID der Festplatte. Bei IDE: 0 = Master, 1 = Slave, bei SCSI: SCSI-ID. l ist die LUN (Logical Unit Number) - normalerweise 0 p und alles weitere ist identisch mit der multi()-Syntax oben.
Die wichtigsten Optionen

/FastDetect schaltet die Hardwareerkennung von NTDETECT.COM aus, welche noch in Windows NT 4.0 gebraucht wurde /NoGUIBoot startet Windows ohne grafische Ausgabe. Während des Bootvorgangs werden keine Meldungen angezeigt /BootLogo in Verbindung mit /NoGUIBoot kann man den Bootscreen ohne spezielle Tools ändern; dieser muss dazu in folgender Form im Windows-Verzeichnis vorhanden sein: BOOT.BMP; 640x480 Pixel; 16 Farben /SOS zeigt alle Treiber während des Ladevorgangs an; danach erscheint ein Startbildschirm analog zu Windows NT; Das bedeutet nicht, dass diese Treiber auch unbedingt von Windows gestartet werden. Kann nützlich zur Fehleranalyse sein.

Scroll up

Für eine kleine Spende wäre ich sehr dankbar, denn das Leben ist ein scheiß Spiel, aber es hat eine verdammt geile Grafik!

Visitors
0 Members and 1 Guest are online.

Board Statistics
The forum has 809 topics and 960 posts.

0 members have been online today:


Visitor record: 70 users on Mon Jan 29, 2024 7:18 pm..