[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Grub installieren



Andre Tann <atann@alphasrv.net> (Mi 22 Feb 2012 11:02:25 CET):
> Peter Funk, Mittwoch, 22. Februar 2012: 
> 
> > Zum Beispiel so:
> >     for PLATTE in /dev/hda /dev/hdb /dev/hdc ; do
> >         echo $PLATTE :
> >     sudo dd if=$PLATTE count=1 | xxd | grep GRUB
> >     done
> > 
> > Dabei sollte dann so etwas zu sehen sein:
> >     0000180: 7de8 2e00 cd18 ebfe 4752 5542 2000 4765  }.......GRUB .Ge
> 
> Aha, das sieht schon mal schlecht aus:
> 
> # cat check-grub 
> for PLATTE in /dev/hda /dev/hdb /dev/hdc ; do
>   echo $PLATTE :
>   dd if=$PLATTE count=1 | xxd | egrep "(LILO|GRUB)"

    xxd -l 512 < $PLATTE | egrep …    täte es auch.
    head -c 1b < $PLATTE | egrep …    ist noch sicherer, falls LILO oder
                                      GRUB in Hexdump auf zwei Zeilen verteilt
                                      sind



> done
> 
> # ./check-grub 
> /dev/hda :
> 1+0 records in
> 1+0 records out
> 512 bytes (512 B) copied, 6.4306e-05 s, 8.0 MB/s
> 0000000: faeb 2101 b401 4c49 4c4f 1608 3641 084e  ..!...LILO..6A.N

Das muß nichts zu sagen haben. Der Grub läßt für gewöhnlich einige Teile
im MBR aus, damit bleibt mitunter die Signatur vom LILO mit drin.

Typischerweise trägt GRUB am Anfang einen „JUMP SHORT imm“ (hex: eb XX)
auf die Stelle ein, wo er wirklich beginnt.

    echo "HALLO" >$PLATTE
    xxd -l 64 < $PLATTE
    grub-install
    xxd -l 64 < $PLATTE

sollte einen Unterschied zeigen.

Wenn Du Mut hast, nullst Du den MB-Code (nicht Sektor!), das sind, denke
ich, die ersten 446 Bytes im MBR. Man möge mich bitte korrigieren.

    sfdisk -d $PLATTE > backup.ptable
    dd if=/dev/zero of=$PLATTE bs=446 count=1

    diff backup.ptable <(sfdisk -d $PLATTE)
        … sollte keine Unterschiede aufzeigen!
        Ansonsten halt 
        sfdisk $PLATTE <backup.ptable 
        wieder die Partitionstabelle zurück

    (Oder alternativ kannst Du auch den kompletten MBR sichern.)

Und dann mit xxd und grub-install den Erfolg prüfen.

Wenn Du rausfindest, wie viel Platz zwischen MBR und der 1. Partition
ist, kannst Du auch diese Lücke mal nullen, denn Grub möchte sich dort
„embedden“, das heißt, Du müsstest dann anschließend auch dort etwas
sehen.

-- 
Heiko :: dresden : linux : SCHLITTERMANN.de
GPG Key 48D0359B : 3061 CFBF 2D88 F034 E8D2 7E92 EE4E AC98 48D0 359B

Attachment: signature.asc
Description: Digital signature


Reply to: