Boot
Inhaltsverzeichnis
- 1 Allgemeines
- 1.1 der Bereich des Möglichen
- 1.2 Bootmanager
- 1.3 Anforderungen an den Benutzer
- 1.4 USB Speicher
- 1.5 Anleitungen zum Thema...
- 1.6 chainloaden
- 1.7 Multi Boot auf verschiedenen Festplatten oder Partitionen
- 1.8 Eigenheiten von DOS und Microsoft Windows
- 1.9 Eigenheiten von einigen Bootloadern von Verschlüsselungsprogrammen
- 1.10 Eigenheiten vom TrueCrypt Bootloader
- 1.11 Eigenheiten von manchen BIOS
- 2 Bootfähig machen von USB Speicher
- 3 Sammlung von Informationen
- 4 Links
- 5 Siehe auch
Allgemeines
der Bereich des Möglichen
Man kann nahezu beliebig viele Betriebssysteme auf Festplatten und USB Speicher installieren und booten. Auch die Neuinstallation und Verschlüsselung aller Betriebssysteme ist möglich, ohne dabei die anderen Betriebssysteme zu beschädigen.
Bootmanager
Einen Bootmanager kann man im Master_Boot_Record (MBR) der ersten Festplatte installieren. Manche Bootmanager benötigen noch eine kleine Partition, um weitere Dateien zu laden, die sie benötigen, so auch GRUB.
Bei der Neuinstallation von Betriebssystemen kann es durchaus vorkommen, dass diese den Bootloader im MBR mit ihrem eignen Bootloader überschreiben und dass deshalb das Booten multipler Betriebssysteme nicht mehr möglich ist. Dieser Zustand ist jedoch meistens reparabel. Daher wird empfohlen, vom Bootmanager und seinen Einstellungsdateien immer ein Backup zu haben, oder noch besser dass man seinen Bootmanager auch von Diskette, CD oder USB starten kann.
Anforderungen an den Benutzer
Die Einrichtung von mehreren Betriebssystemen auf einem Computer ist sehr anspruchsvoll. Wenn man Fehler macht(zum Beispiel falsche Partition formatieren), kann es zu Datenverlust kommen.
Daher wird jedem der sich damit beschäftigt, empfohlen, erst in einem Emulator zu testen und zu üben, da dort das Risiko des Datenverlustes bei ordnungsgemässer Anwendung gegen Null geht.
USB Speicher
Als USB Speicher gelten USB Festplatten, Sticks und Speicherkarten.
Anleitungen zum Thema...
... sind sicherlich hilfreich als Referenz. ^WEitergehende Informationen zu kennen, ist nützlich, wenn man später ein Betriebssystem neu installieren will, verschlüsseln will, löschen will, der Bootsektor defekt ist oder man noch andere Betriebssystem installieren will. In diesen Fällen reicht das sture Befolgen der Anleitung nicht mehr. Wenn man sich für das Booten von multiplen Betriebssystemen interessiert, ist es also erforderlich, dass man möglichst über umfassende Informationen zum Thema Boot verfügt.
chainloaden
Wenn ein Bootloader vom BIOS gestartet wurde, dann hat dieser die Möglichkeit, ein bestimmtes Betriebssystem direkt zu starten. GRUB4DOS kann zum Beispiel Linux Kernel direkt in den Speicher laden. Um andere Betriebssysteme, wie Windows, zu starten, kann er den MBR in den Speicher laden und dann die Kontrolle an ihn übergeben. Dies nennt man chainloaden.
Multi Boot auf verschiedenen Festplatten oder Partitionen
Einfacher ist es natürlich, für jedes Betriebssystem eine eigene Festplatte zu nehmen. Zum Beispiel Festplatte 0 mit Windows und Festplatte 1 mit Linux. Um so mehr Systeme man auf verschiedenen Partitionen hat, desto komplizierter wird es. Dies heißt aber nicht das dies nicht machbar wäre.
Eigenheiten von DOS und Microsoft Windows
verschiedene Versionen auf der selben Partition
Obwohl es beschränkt möglich ist, verschiedene DOS- und Windows-Versionen auf der gleichen Partition zu haben, wird dies von Microsoft nicht unterstützt und auch nicht empfohlen.
Verlangen nach erster Festplatte und Partition
DOS und Windows wollen immer ihren Bootsektor in den Master Boot Record der ersten Festplatte schreiben, sowie ihre Startdateien auf die erste Partition der ersten Festplatte schreiben.
Wenn also Windows auf andere Festplatten oder Partitionen als (hd0,0) installiert werden soll, muss man es austricksen. Dazu eignet sich der Bootmanager GRUB sowie GRUB4DOS. Zum Beispiel kann man mit dem Befehl map (hd0,0) (hd1,0) virtuell die erste Festplatte mit der zweiten physischen Festplatte vertauschen. GRUB sowie GRUB4DOS fangen genau wie das BIOS immer an, die Festplatten mit 0 anzuzählen. Die erste physische Festplatte (z.B. IDE 0) ist hd0, die zweite physische Festplatte demnach hd1. Das Komma nach hdX (X steht für Festplatte 0, 1 und so weiter) steht für die Parititon. Zum Beispiel (hd1,2) bedeutet die dritte Partition auf der zweiten Festplatte. Mit dem Befehl "hide" bzw. "unhide" kann man einzelne Partitionen sichtbar, bzw. unsichtbar machen.
Windows-Setup auf andere Festplatten außer internen
Es ist nicht ohne weiteres möglich, per Windows-Setup auf eine Festplatte zu installieren die keine Interne ist (also IDE, SATA), dies betrift also unter anderem USB Festplatten.
Das Installieren von Windows auf eine USB Festplatte wird von Microsoft nicht unterstützt, ferner heißt es sogar auf der Webseite von Microsoft, dass dies nicht möglich wäre. Allerdings gibt es trotzdem Wege, dies umzusetzen, wobei es allerdings nicht ganz einfach ist. [Methode veränderte Setup CD] [2 Methode lokale Installation kopieren (einfacher)]
Eigenheiten von einigen Bootloadern von Verschlüsselungsprogrammen
Einige Verschlüsselungsprogramme für Windows unterstützen das Verschlüsseln von ganzen Festplatten, auch der Systemfestplatte, worauf Windows installiert ist. Zu diesen Programmen gehört auch TrueCrypt. Der MBR wird dabei durch den Bootloader des Verschlüsselungsprogrammes ersetzt. Daher kann dann kein normaler Bootloader oder Bootmanager mehr im MBR sein.
Eigenheiten vom TrueCrypt Bootloader
jeder TC Bootloader ist einzigartig
Jedes Mal wenn man eine Festplatte mit TrueCrypt verschlüsselt, wird ein anderer Masterkey verwendet und jedes Mal wenn man Passwort/Keyfiles ändert, ein neuer Header verwendet. Masterkey und Header sind Bestandteile des TC Bootloaders.
Daher kann man den TC Bootloader von einer Festplatte nicht auch benutzen, um damit eine andere Festplatte zu booten. Dies gilt selbstverständlich auch für die TrueCrypt Rescue-CD, dies ist auch einzigartig und nur für die jeweilige Festplatte zulässig.
chainloaden des TC Bootloaders
Der TrueCrypt Bootloader lässt sich nicht direkt durch GRUB sowie GRUB4DOS chainloaden.
Andere Bootloader vom TC Bootloader aus starten
Obwohl man den TrueCrypt Bootloader nicht über GRUB / GRUB4DOS chainloaden kann, so hat er jedoch selbst die Möglichkeit, andere Bootloader zu chainloaden. Dazu muss man nur die ESC Taste drücken.
Der TC Bootloader sucht dann nach anderen Bootloadern im Partition Boot Record (PBR) in anderen Partitionen (sowie auf anderen Festplatten?) und führt diese aus.
Alternative GRUB oder GRUB4DOS
Als Alternative kann man sich zum Beispiel GRUB oder GRUB4DOS auf eine Diskette installieren und dann folgenden Code in die menu.lst eintragen.
title TrueCrypt Bootloader Festplatte 0 rootnoverify (hd0,0) makeactive chainloader (fd0)/tcboot
Den TrueCrypt Bootsektor tcboot muss man vorher abspeichern (siehe [hier]. Durch diesen kleinen Trick wird der Bootloader von TrueCrypt von Diskette geladen und dieser wird dann den restlichen MBR erfolgreich ausführen können.
Alternative syslinux
Eine weitere Alternative bietet isolinux (und nur isolinux, da localboot nur von isolinux unterstützt wird und nicht durch syslinux), ein Teil des syslinux Bootloaders. Mit zum Beispiel
localboot 0x80
würde man die Festplatte 0 chainloaden. Dies klappt mit dem TC Bootloader, falls dieser im MBR von Festplatte 0 ist.
Alternative GRUB4DOS
Mit Version grub4dos-0.4.3-2008-05-02 von GRUB4DOS ist es möglich, CD-ROM Abbilder (.iso) zu emulieren. Dazu muss man die Iso, die TrueCrypt als Rescue-CD erstellt hat, auf das Startmedium kopieren, wo der Bootloader abgespeichert ist. Der Eintrag in der menu.lst für GRUB4DOS könnte zum Beispiel so aussehen (angenommen wir haben ein 2,80 Diskettenlaufwerk oder Superfloppy):
title load tc.iso map --mem (fd0)/tc.iso (hd32) map --hook chainloader (hd32) boot
Eigenheiten von manchen BIOS
Ältere BIOS auf älteren motherboards können nur grundlegende Geräte wie Diskette sowie Festplatte booten.
Das Booten von CD-ROM ist bei allen neueren BIOS möglich. Booten von CD-ROM ist nach dem El Torito Standard spezifiziert, daher ist dies bei fast allen motherboards problemlos möglich.
Für das Booten von USB gibt es keine direkte Übereinkunft. Manche BIOS können daher überhaupt kein USB booten, andere können nur von USB booten wenn es im Festplatten-Modus läuft oder im Superfloppy-Modus, oder umgekehrt.
USB Hubs (Verteiler) machen auch oft Probleme, es lohnt sich also es auch ohne USB Hub zu versuchen. Zur Fehlerfindung kann man auch die verschiedenen Optionen zum Booten ausprobieren (USB-HDD, USB-FDD).
Bei noch weniger verbreiteten Methoden (booten von SCSI, USB-Floppy, ZIP-Laufwerk, Netzwerk) kann es auch häufig zu Besonderheiten kommen. Es hilft im Zweifel eine Suchmaschine seiner Wahl einzusetzen und sich über allgemeine und Gerätespezifische Besonderheiten zu informieren.
Bootfähig machen von USB Speicher
Beim bootfähig machen von USB Speicher gehen immer alle Daten auf dem USB Speicher verloren!
USB Geräte können in zwei verschiedenen Modi formatiert werden. Superfloppy, ähnlich einer Diskette mit enormer Übergröße und nur mit einem Bootsektor oder als Festplatte mit einem Bootsektor und einem kompletten Master_Boot_Record inklusive Partitionstabelle.
Windows selbst ist es ziemlich egal, ob ein USB Gerät als Superfloppy oder als Festplatte erstellt wurde. Im BIOS allerdings kommt es durchaus darauf an. Manche BIOS können beide Methoden booten, andere BIOS nur eine Methode und ältere BIOS überhaupt keine (in diesem Fällen ist direktes Booten nicht möglich; mehr dazu unter kein BIOS Support).
Wenn es einem egal ist, ob man ein USB Gerät als Superfloppy oder als Festplatte erstellt, dann kann man das Tool HP Drive Key verwenden. Dies ist ein kostenloses Tool von HP mit dem man USB Speicher formatieren und bootfähig machen kann. Das tool funktioniert auch für Geräte, die nicht von HP stammen.
Explizit Superfloppy erstellen
Geht unter Windows nicht. Man benötigt mindestens eine Linux Live CD, wie etwa Ubuntu Live oder Knoppix. Als erstes eine Konsole öffnen. Sich den Namen der USB Gerätes anzeigen lassen per:
fdisk l
danach:
install-mbr /dev/Name --force
danach:
mkdosfs -I /dev/Name
Explizit Festplatte erstellen
Geht unter Windows nicht. Man benötigt mindestens eine Linux Live CD, wie etwa Ubuntu Live oder Knoppix. Als erstes eine Konsole öffnen.
Bootsektor löschen mit: dd if=/dev/zero of=/dev/Name bs=512 count=1
fdisk starten:
fdisk /dev/Name
In fdisk:
n,p,1 (new partition) a,1 (make active) t,6 (create FAT16) w (write all changes to USB)
Zurück in der Konsole:
install-mbr /dev/Name --force
Anwendungsgebiete
Will man WinPE, BartPE, ubcd4win, Windows, DOS oder andere Betriebssysteme von USB aus starten, dann ist es ziemlich egal, ob man den Superfloppy- oder den Festplatten-Modus verwendet.
Hat man allerdings mehrere eingebaute Festplatten und Multiboot, oder man plant einen Bootmanager auf USB zu installieren, dann ist der Superfloppy-Modus vorzuziehen. Viele Bootloader erkennen sonst das USB Gerät als Festplatte. Wenn man zum Beispiel von USB bootet und USB im Festplatten Modus ist, dann wird USB für [GRUB] zu (hd0,0) und die erste primäre Festplatte wird zu (hd1,0). Daher ist in diesen Fällen Superfloppy vorzuziehen, da diese nicht mit richtigen Festplatten 'konkurrieren'.
Sammlung von Informationen
TrueCrypt Bootsektor auf Diskette speichern
Unter Linux als Root in einer Konsole:
dd if=/dev/sda of=/media/disk/tcboot bs=512 count=1
GRUB4DOS auf Floppy installieren
Unter MS-DOS hat folgendes funktioniert:
bootlace.com --floppy --chs 0x00
Alle Festplatten unter Linux anzeigen lassen
Unter Linux als Root in einer Konsole:
fdisk -i
Den kompletten Master Boot Record von Festplatte 0 in einer Datei sichern
Unter Linux als Root in einer Konsole:
dd if=/dev/sda1 of=/media/disk-1/test.bss bs=512 count=1
Beispiel Windows XP Setup #1
Ausgangslage:
- 3 Festpaltten, 1 CD-ROM
- IDE 0,0 (unformated)
- IDE 0,1 formated as C:
- IDE 0,1 CD-ROM
- IDE 1,1 (unformated)
Wenn man jetzt Windows auf C: installieren will, wird das Windows XP-Setup danach fragen, ob man IDE 0,0 auch formatieren will, da Windows einige Startdateien dort speichern darf. Diese Startdateien wären konkret (boot.ini, bootfront.bin, ntdetect.com, ntdr, sowie der Bootloader im MBR). IDE 0,0 steht dann im Windows als D: und der Rest ist auf C:. Daten von nicht-Windows- Betriebssystemen (oder unerkannte Windows-Versionen) auf IDE 0,0 würden also verloren gehen.
Beispiel Windows XP Setup #2
Ausgangslage:
- 3 Festplatten, 1 CD-ROM
- IDE 0,0 deactivated in BIOS (unformated)
- IDE 0,1 deactivated in BIOS (unformated)
- IDE 0,1 CD-ROM
- IDE 1,1 only disk activated in BIOS (unformated)
Das Windows XP-Setup wird IDE 0,0 und IDE 0,1 im trotzdem sehen. Allerdings ist es trotzdem möglich, Windows XP auf IDE 1,1 zu installieren. IDE 0,0 und IDE 0,1 bleiben dabei scheinbar(! ungetestet) unberührt.
Allerdings würde das Windows XP-Setup nach dem ersten Kopieren abbrechen und in vielen Fällen nicht von Festplatte IDE 1,1 booten. Man könnte dies zum Beispiel beheben, indem man GRUB oder GRUB4DOS auf Diskette installiert und dann mit
title boot hd2,0 root (hd2,0) makeactive chainloader +1
diese Festplatte direkt bootet. Das Windows-Setup lässt sich dann ordnungsgemäß abschließen und Windows scheint voll benutzbar zu sein.