Grub auslesen

Peter Voigt peter.voigt1 at gmx.net
Tue Feb 12 11:31:22 CET 2008


On Tue, Feb 05, 2008 at 08:52:36AM +0100, Peter Voigt wrote:
> 
> Dieser Zeiger findet sich im MBR ab der Stelle 07C40, anzuschauen
> z.B. durch
> 
> dd if=/dev/hda of=- bs=512 count=1 | od -xa
> 
> Dort ist folgendes zu finden:
> 

Eine kleine Ergänzung erscheint angebracht:

> 07C40 .... 
> 
> Das einzelne Byte an dieser Stelle definiert das Startlaufwerk,
> auf dem der Second Stage Bootloader liegt. 80 definiert die erste
> Platte, 81 die zweite usw.
> 
> Wen interessiert, von welcher Platte Grub bootet, muß also dieses
> Byte anschauen.
 
Es muss natürlich 

0x0040 ....

heissen. Länger als 512 Byte ist der MBR einfach nicht ;)

Findet sich dort als erstes Byte nicht z.B. 0x80, sondern 0xFF 
(Stichwort GRUB_INVALID_DRIVE), bedeutet das nur, dass Grub das-
jenige Laufwerk auswählt, um den nächsten Stage zu laden, welches 
vom BIOS vorgegeben war.

Das läßt sich dann in den BIOS-Einstellungen nachsehen. 

In diesen Fällen sind das Laufwerk, dessen MBR vom BIOS gebootet 
wird, und das Laufwerk, auf dem der nächste Stage liegt, identisch. 

In den anderen Fällen können das Laufwerk, das vom BIOS gebootet wird,
und das Laufwerk, auf denen die Startdateien von Grub installiert
worden sind, auseinander fallen. Das sollte vermieden werden.

Bei den Rechnern, auf denen ich nachgeschaut habe, war (Zufall?) in 
allen Fällen 0xFF eingetragen.

pv






More information about the Linux mailing list