Was ist der Unterschied zwischen einer bootfähigen und einer nicht bootfähigen Partition? Ich weiß, dass ein Benutzer ein System nicht von einer Partition booten kann, die als nicht bootfähig markiert ist, und von einer Partition, die als bootfähig markiert ist.
Ich möchte die zugrunde liegenden Unterschiede zwischen diesen Partitionsflags kennen.
Antworten:
Obwohl es abgelehnt wurde ... möglicherweise, weil jemand dachte, es würde die Frage nicht beantworten ... Ich denke, die Antwort von @ Rony ist ein guter Anfang, um zu erklären, worum es bei der
boot
Flagge geht. (Ich hatte eigentlich vor, meine Antwort mit einem Beispiel zu beginnen, das dem von ihm angegebenen ähnlich war.)Ich war bereit, eine Antwort darauf zu finden, wie die
boot
Flagge zu diesem Zeitpunkt ein oft ignorierter (wie das Beispiel von @ Rony zeigt) historischer Überrest aus einer Zeit ist, in der Festplatten kleiner und Bootloader viel weniger ausgefeilt waren.Aber dann stellte ich fest, dass dies bereits in dieser Antwort auf diese Frage gesagt wurde : Was ist die Option "Bootable Flag" bei der Installation einer Distribution?
Außerdem gab es einen Link zu einem kurzen Artikel über das Boot-Flag, der besagt
Nun, das ist peinlich ...
Als ich behauptete, die
boot
Flagge sei ein " historischer Überrest ", ging ich davon aus, dass dies der Fall war, da GRUB sie eindeutig nicht verwenden musste. Sicherlich würde Microsoft auch haben „ weitergezogen “.Das bekannte Zitat, das normalerweise Oscar Wilde zugeschrieben wird, erwies sich in diesem Fall als zu wahr.
Es scheint , dass die MBR und PBR (Partition Boot Record) Lader von den Windows - Betriebssystemen verwendet DO erwarten , dass die
boot
Fahne richtig eingestellt werden.Um dies zu testen, habe ich das Startflag von allen Partitionen einer Windows 8-VM gelöscht. (Siehe unten. Wenn Sie neugierig sind, finden Sie hier einen Link zum Pastebin des vollständigen BootInfo Script-Ergebnisses. )
Als ich das Flag von beiden Partitionen gelöscht
FATAL: INT18: BOOT FAILURE
habe, wurde beim Start eine Fehlermeldung angezeigt. (Ich bin nicht sicher, ob dies vom Windows MBR-Bootloader oder dem VM-Äquivalent eines BIOS stammt.)Um zu sehen, was passieren würde, setze ich stattdessen auch das
boot
Flag auf die "falsche" Partition . Dies führte zu dem im Bild unten gezeigten Fenster./dev/sda2
/dev/sda1
<sigh/>
Aufgrund dieser Erfahrung frage ich mich, ob Microsoft immer noch denselben MBR-Bootsektor-Loader verwendet, den sie für MS-DOS und Windows 3.0 / 3.1 verwendet haben.
quelle
Von der Laptop-Festplatte
Von bootfähigem USB Linux
Sie haben keine einzige bootfähige Partition, während sie alle bootfähig sind.
quelle
Nur eine Flagge in der Partitionstabelle. Der MBR durchsucht das Flag in den Partitionen und führt die Partition mit dem Flag "boot" aus.
quelle
Bei Verwendung des herkömmlichen Microsoft-MBR gibt der Code im MBR an, wie Festplatten-E / A ausgeführt werden sollen, und durchläuft die Partitionen, um festzustellen, welche mit dem Boot-Flag gekennzeichnet sind. Es sollte nur eine Partition so markiert sein. Anschließend wird der erste Sektor dieser Partition überprüft. Wenn er entsprechend markiert ist, liest er diesen Sektor und überträgt die Kontrolle an ihn. Wenn ich mich richtig erinnere, ist diese Überprüfung, dass der Sektor mit 0x55 0xaa endet.
Der Rest der Verantwortung für das Booten liegt beim Code in diesem Sektor und dem Code, den er wiederum lädt.
GRUB2 verwendet sehr oft einen eigenen MBR und Prozess und ignoriert dieses Bit.
quelle