Menü Schließen

Debian – Grub Fehler symbol not found grub_divmod64_full

Unix Shell

System ist ein frisch installiertes Debian Wheezy mit Softwareraid 6 für md0 = root und boot, md1=swap und md2 für Daten. Zusätzlich gibt es noch eine 100MB Bios Partition am Anfang der Platten. Die Platten sind 6x3TB mit GPT Tabelle. Ich musste 2 Platten von 6 aus dem Raid nehmen, wodurch es degraded aber noch clean und funktionstüchtig angezeigt wurde. Dann der Neustart und bäng folgender Fehler wurde angezeigt:

Fehlermeldung

Loading Operating System …
GRUB loading.
Welcome to GRUB!
error: symbol not found grub_divmod64_full
Entering rescue mode …
grub rescure>

Der Fehler bedeutet, dass die Version von Grub die durch den MBR + den embeded Teil beim booten nicht mit der Version die in /boot/grub/ gefunden wird, übereinstimt. Entweder ist Grub im MBR der Festplatte installiert und ein EFI wird erwartet oder umgekehrt.

Lösungssuche:

Ein „ls“ zeigt folgendes:
(md/0) (md/1) (md/2) (hd0 ) (hd0,gpt4) (hd0,gpt3)….

Die Suche nach dem vmlinuz image auf einem der Partitionen:
search –file /vmlinuz
unknown command ’search‘

Erster Schritt im Bios die Konfiguration überprüfen

– ist alles korrekt eingestellt, Bootreihenfolge, EFI etc.

Zweiter Schritt – prüfen ob Grub im MBR der Festplatten installiert wurde

dd if=/dev/sdb bs=512 count=1 | hexdump -C

GRUB.Geom.Hard und Disk.Read.Error zeigen dass er installiert ist. Evtl. nur nicht korrekt?

 Boot von Debian Live-CD oder Installer im Rescue Mode und Grub neuinstallieren

  1. Username = user und Passwort = live (Debian Jessie 8.x)
  2. sudo passwd root
  3.  aptitude install mdadm -> alle Raid Devices sollten erkannt werden
  4.  mdadm -D /dev/md0 -> sollte ok sein (clean but degraded bei mir)
  5. fsck.ext4 /dev/md0
    e2fsck 1.42.5 (29-Jul-2012)
    root: clean, 32765/2927520 files, 588237/2927104 blocks
  6. mkdir /mnt/md0
  7.  mount /dev/md0 /mnt/md0
  8. mount -o bind /dev /mnt/md0/dev
  9. mount -o bind /sys /mnt/md0/sys
  10. mount -t proc /proc /mnt/md0/proc
  11. chroot /mnt/md0 /bin/bash -> ruft die alte Umgebung auf -> Kontrolle z.B. über ls /etc/ -> hier sollten dann bekannte Konfigurationen liegen
  12. grub-install  –recheck /dev/sda (für alle anderen wiederholen sdb,sdc…)
    Installation finished. No error reported.
  13. update-grub
    Generating grub.cfg …
    Found linux image: /boot/vmlinuz-3.2.0-4-amd64
    Found initrd image: /boot/initrd.img-3.2.0-4-amd64
    done
  14. exit –  shell beenden
  15. umount /mnt/md0/{proc, sys,dev}
  16. reboot und hoffen das er normal startet

Super das wars, scheinbar wurde der Bootbereich bei der Installation von Wheezy nicht korrekt in alle Disks geschrieben. Jetzt bootet er wieder.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert