Wie stelle ich den Bootloader "Grub2" bei Multiboot-Betriebssystemen (Linux + Linux oder Linux + Windows) wieder her? Eine Handlungsanleitung für Betroffene und Verzweifelte:
Hallo Forum,
I. Grundsätzliches:
I.1 Bootloader gibt es viele. "Grub2 (= Grand unified Bootloader)" ist der Aktuellste. "(E)Lilo, BLOB, EasyBCD, XOSL, SYSLINUX, NT-Loader, Bootmgr" sind weitere und nur stellvertretend erwähnt, wobei die letzten beiden Bootloader aus Windowszeiten vielen Usern bekannt sein dürften. Die richtige Lage des Bootloaders ist immer im MBR der ersten Festplatte (= /dev/sda). Beachtet unbedingt die Lage innerhalb der 128 GiB-Grenze, da ansonsten der Bootloader bei großen, modernen HDDs (= Festplatten) nicht gefunden wird und nicht startet. Separate Bootloader-Partitionen sind auch möglich, jedoch nicht Gegenstand des heutige threads.
I.2 Wenn es dann aus den vielerlei (un)bekannten Gründen passiert ist und das Betriebssystem nicht mehr startet, gerät der unbedarfte User in die nächste Falle. Der User muß sich von seiner liebgewonnenen grafischen Umgebung auf die textbasierenden Ebene einer "Konsole" begeben. Ein Graus für viele Anwender.
"Konsole, Terminal, Xterm, Systemverwaltungsmodus, Kommandozeileninterpreter, MS-Eingabeforderung", alles deutet auf textbasierende Ebenen hin und gemeint sind immer Texteingabekonsolen.
Die Konsolen sind wie folgt zu erreichen:
Opensuse_11.4 = Alt+F2+Eingabe: Konsole
oder Startgecko >> System >> Terminal usw.,
Ubuntu = Strg+Alt+T oder Menu >> Terminal usw.,
Debian = Strg+Alt+F1 und zurück mit Strg+Alt+F7.
II. Reparaturvoraussetzungen:
Um Grub2 zu reparieren wird folgendes benötigt:
Eine x-beliebige Live-CD. Knoppix wird bevorzugt, andere Live-CDs funktionieren aber auch und
eine Konsole.
III. Die eigentliche Grub2-Reparatur:
Wenn wir uns an die Spielregeln gehalten haben, liegt nun unser defekter Grub2-Bootloader im MBR (= Masterbootrecord) der ersten HDD (= C oder /dev/sda) und unsere Root-Partition des Linuxbetriebssystems auf einer weiteren Partition des gleichen Rechners.
Kenne ich meinen Rechner genau, sind beide Laufwerksnamen natürlich bekannt, vielleicht habe ich sie sogar zuvor notiert!
Wenn nicht, dann müssen diese im ersten Schritt wie folgt ermittelt werden.
III.1 Laufwerksnamen ermitteln:
Konsole aufrufen und die nachstehenden Befehle als root (su+PW oder sudo+PW) eingeben: sudo fdisk -l (kleines L für list = auflisten). Die /root-Partition wird gesucht und benötigt, aber nicht das durch ein Sternchen gekennzeichnete Boot-Laufwerk, daß in der Regel die Laufwerksbezeichnung /dev/sda5 für die erweiterte logische Partition trägt. Unsere /root-Partition hat also die Laufwerksbezeichnung /dev/sda6 oder höher. /dev/sda signalisiert die erste HDD.
III.2 chroot (change root):
Die Live-CD bleibt im Laufwerk und wir wechseln nun in unser installiertes Linuxbetriebssytem und reparieren den Grub2-Bootloader mit nachstehenden Befehlen. Beachtet unbedingt die Leerzeichen (jeweils eines) an der richtigen Stelle! Der Befehl wird sonst nicht angenommen und muß wiederholt werden. Der Gartenzaun (# = Nummernzeichen, Doppelkreuz) wird nicht mitgeschrieben, sondern dient zur Zeilentrennung:
100# sudo mount /dev/sda6 /mnt
200# sudo mount -o bind /dev /mnt/dev
300# sudo mount -o bind /sys /mnt/sys
400# sudo mount -t proc /proc /mnt/proc
500# sudo chroot /mnt
600# grub-mkconfig -o /boot/grub/grub.cfg
700# update-grub2
800# grub-install /dev/sda
900# exit
1000# sudo reboot
Appendix zu III.2:
100 bis 400:
Mit "mount" werden das installierte Linux-Betriebssystem nebst den lebenswichtigen Verzeichnissen: /dev, /sys und /proc ins Live-CD-System eingehängt.
500: /root-Ebene (= Wurzelverzeichnis) wird gewechselt. Wir befinden uns nun auf dem Live-CD-System.
600: Grub2-Konfiguration ändern.
700: Grub2-Konfiguration aktualisieren.
800: Neuinstallation des Grub2-Bootloaders auf der ersten HDD.
900: Verlassen von chroot und
1000: Reboot mit neuem Bootloader.
Alle Betriebssysteme sollten nun im Bootloader ordnungsgemäß eingetragen sein und durch Anwahl auch gestartet werden können.
(Völlig fix und) fertig und viel Spaß mit Linux.
MfG.
violetta