menu.jpg  ::  Home ::  Computing ::  Downloads ::  Scooter ::  Links ::  Music ::  Nonsense ::  Mail :: 

Multi-Booter mit Windows 9X, Windows NT 4.0 und Linux

Es ist überhaupt kein Problem, Rechner mit mehreren Betriebsystemen zu nutzen (obwohl ich heute eigentlich ausser Linux nix anderes mehr verwende), ohne einen kommerziellen Bootmanager zu verwenden. Beispielsweise waren auf meiner Maschine folgende Betriebsysteme installiert, die ich mit Hilfe des NT-Loaders startete:

Wie die Bootmanager, die im Lieferumfang der einzelnen Betriebsysteme enthalten sind, heissen, über welche Dateien sie ausgeführte und konfiguriert werden und welche Leistungen sie bieten, ergibt sich aus der folgenden Tabelle:

Betriebsystem Bootmanager Binärdatei Konfigurationsdatei Mehrere Betriebsysteme ?
Windows 9X ? C:\IO.SYS C:\MSDOS.SYS Nein
Windows NT 4.0 NT-Loader C:\NTLOADR C:\BOOT.INI Ja
Linux LiLo /sbin/lilo /etc/lilo.conf Ja (mit Einschränkung)

Anmerkungen zu den Bootmanagern

Während es sowohl LiLo als auch dem NT-Loader keinerlei Probleme bereitet, ein DOS, Windows 9X oder OS/2 neben seinem eigenem Betriebsystem zu starten, kann sich Windows NT 4.0 ausgesprochen zickig anstellen, wenn es von LiLo gestartet wird (beim kommenden Windows 2000 soll das sogar unmöglich sein !!?!). Folglich empfiehlt es sich, den NT-Loader zum Booten der verschiedenen Betriebsysteme zu verwenden, sobald Windows NT 4.0 "im Spiel" ist.

Sicherung des bisherigen Bootsektors

Es ist ferner mit Sicherheit ausgesprochen nervenschonend, eine Kopie des bisherigen Bootsektors zur Hand zu haben, die man alternativ wie folgt erstellen kann:

Unter MS-DOS oder im DOS-Modus von Windows 9X

  1. Mit dem Freeware-Utility "BOOTPART.EXE".
  2. Mit einem Diskeditor wie z.B. Norton Diskedit aus den Norton Utilities
  3. Mit folgender Batchdatei - nennen wir sie BS_SAVE.BAT - wird der Bootsektor in die Datei C:\BOOTSECT.SAV gesichert:
       ::***** BS_SAVE.BAT **********
       ECHO LCS:100 2 0 1 >> \BOOT.$$$
       ECHO rcx >> \BOOT.$$$
       ECHO 200 >> \BOOT.$$$
       ECHO n BOOTSECT.SAV >> \BOOT.$$$
       ECHO wcs:100 >> \BOOT.$$$
       ECHO q >> \BOOT.$$$
       ECHO. >> \BOOT.$$$
       PFAD_ZU_DEBUG\DEBUG < \BOOT.$$$
       ERASE \BOOT.$$$
      

    Wieder hergestellt wird der Bootsektor mit folgendem Batch, den wir analog BS_REST.BAT nennen:

       ::******* BS_REST.BAT ********
       ECHO WCS:100 2 0 1 > \BOOT.$$$
       ECHO q > \BOOT.$$$
       ECHO. > \BOOT.$$$
       PFAD_ZU_DEBUG\DEBUG \BOOTSECT.SAV < \BOOT.$$$
       ERASE \BOOT.$$$
      

Unter Linux

Mit folgenden Befehlszeilen kann der Bootsektor in die Datei \tmp\bootsect.sav gesichert und von dort auf ein beliebiges Laufwerk verschoben werden:

  1. Bei einem reinen SCSI-System:
       dd if=/dev/sda1 of=/tmp/bootsect.sav bs=512 count=1
       mv /tmp/bootsect.sav /mnt/wie_auch_immer_du_heisst/
      
  2. Bei einem reinen EIDE-System
       dd if=/dev/hda1 of=/tmp/bootsect.sav bs=512 count=1
       mv /tmp/bootsect.sav /mnt/wie_auch_immer_du_heisst/
      

Betriebsystem-Konstellationen

Aus den oben aufgeführten Betriebsystemen ist die Koexistenz mehrerer Systeme in folgenden Konstellationen denkbar und darzustellen:

Windows 98 und Windows NT 4.0

Bei der Installation erkennt Windows NT 4.0 eine vorhandene Installation von Windows 98 und bindet diese in den NT-Loader ein. Sollte - was nicht unbedingt empfehlenswert ist - Windows 98 nach Windows NT 4.0 installiert werden, kann der Bootsektor von Windows 98 mit der o. a. BS_SAVE.BAT in die Datei BOOTSECT.SAV gesichert werden. Nach Wiederherstellen des NT-Bootsektors mit Hilfe der NT-Rettungsdiskette wird die Datei "C:\BOOT.INI" einfach am Ende um die Zeile

   C:\BOOTSECT.SAV="Microsoft Windoze 98"

ergänzt und beim nächsten Systemstart lässt sich Windows 98 aus dem NT-Loader starten.

Windows 98 und Linux

Hier bietet sich LiLo als Bootmanager an. Dazu muss LiLo im Bootsektor der primären Bootpartition (also auf Laufwerk C:) installiert sein. Dies wird über den Eintrag

   "boot=/dev/sda1" (bei reinen SCSI-Sytemen)
oder
   "boot=/dev/hda1" (bei reinen EIDE-Systemen)

in der Datei "/etc/lilo.conf" gesteuert. Des weiteren sind in dieser Datei folgende Zeilen zu ergänzen oder abzuändern:

   prompt
   timeout=100
   other=/dev/hda1 (bzw. /dev/sda1)
   label=/win98
   table=/dev/hda (bzw. /dev/sda)

Danach ist LiLo neu aufzurufen (lilo) und meldet sich nach dem nächsten Booten mit einem Prompt, der 10 Sekunden auf eine Eingabe wartet (timeout=100). Durch Drücken der TAB-Taste bekommt man eine Systemauswahl und kann wahlweise durch Eingabe von "linux" oder "win98" , jeweils gefolgt von <ENTER> eines der Systeme starten. Per Default startet Linux nach 10 Sekunden.

Windows NT 4.0 und Linux

Aus den oben aufgeführten Gründen sollte in dieser Konstellation Linux aus dem NT-Loader gestartet werden. Hierzu darf LiLo bei der Installation von Linux nicht im Bootsektor der Bootpartition, sondern muss in der Linux-Rootpartition ( / ) installiert werden. Während der im Rahmen der Installation von Linux erfolgenden LiLo-Konfiguration bietet jede mir bekannte Distribution eine derartige Auswahl an. LiLo ist dann nur noch für den Start von Linux zuständig. Der Linux-Bootsektor ist ergo mittels folgender Befehle ins Wurzelverzeichnis von Laufwerk C: zu verschieben:

   dd if=/dev/ZdXY /of=/bootsect.lnx bs=512 count=1
   mv /bootsect.lnx /mnt/wohin_auch_immer/

wobei

Z: "h" bei EIDE und "s" bei SCSI-Systemen
X: "a" bei einer Festplatte, "b", wenn Linux auf 2. Festplatte installiert
Y: je nach Lage der Linux-Rootpartition

ist.

Die Werte fürZ, X und Y können mit dem befehl "df" erfragt werden (nach / gucken).

Windows 98, Windows NT 4.0 und Linux

Siehe oben; es handelt sich um ein Zusammenspiel von Windows 98 und Windows NT 4.0 einerseits und ein Zusammenspiel von Linux und Windows NT 4.0 andereseits.


Valid XHTML 1.0

Zurück zur Main-Site
Impressum
Created with GNU Emacs on Son Mar 26 11:25:14 CEST 2000

Valid CSS