[[Vorlage(Getestet, Hardy, Karmic, Lucid, Maverick)]] {{{#!vorlage Wissen [:GRUB_Umgebung_analysieren: GRUB Umgebung analysieren] [:Terminal: Ein Terminal öffnen] [:chroot/Live-CD: Mittels Desktop-CD in ein installiertes System wechseln] }}} [[Inhaltsverzeichnis(2)]] [[Bild(Wiki/Icons/Oxygen/preferences-other.png, 52, left)]]Dieser Artikel beschreibt, wie man GRUB 2 reparieren kann, wenn er nicht oder nicht mehr so funktioniert wie gewünscht. Bevor man zu Reparaturarbeiten an GRUB 2 geht, sollte man sich stets einen Überblick über das System verschaffen[1]. Nur wenn man sicher weiß, wo die GRUB-2-Dateien liegen und wohin GRUB 2 installiert war bzw. wohin man ihn installieren möchte, kann man die erforderlichen Schritte erfolgreich ausführen. =Reparatur im laufenden System= Am einfachsten ist die Reparatur von GRUB 2, wenn man die betreffende Ubuntu Version, mit der er installiert wurde, noch starten kann. Gelingt dies nicht über das eigentliche [:GRUB_2/Shell#Auswahlmenue-Modus: GRUB 2 Auswahl-Menü], so kann man die [:GRUB_2/Reparatur#Reparatur-mittels-Desktop-CD: Reparatur mittels Desktop-CD] versuchen, oder es - falls verfügbar - über die [:GRUB_2/Shell#Kommandozeile: GRUB-Kommandozeile], den [:GRUB_2/Shell#Rettungs-Modus: GRUB-Rettungs-Modus] oder auch die [:GRUB_2/Shell#Alternativer-Systemstart-mit-Hilfe-der-Super-GRUB2-Disk: Super-GRUB-Disk] probieren. Alle nachfolgenden Befehle werden über das Terminal[2] eingegeben: ==GRUB 2 erneut in den MBR der Festplatte oder Bootsektor einer Partition installieren== Die Kernkomponenten von GRUB 2 - '''boot.img''' und '''core.img''' - in den MBR und den verborgenen Bereich oder Bootsektor schreiben ([:GRUB_2/Terminal_Befehle#grub-setup: mehr zu grub-setup]): {{{#!vorlage Befehl sudo grub-setup /dev/sdX }}} `sdX` ist dabei an das [:GRUB_Umgebung_analysieren#Festplatten-Aufteilung-und-UUID: eigene System] anzupassen. ==GRUB 2 vollständig neu installieren== Zunächst die GRUB 2 Dateien erneut in das Verzeichnis '''/boot/grub''' installieren und anschließend die Kernkomponenten von GRUB 2 in den MBR und verborgenen Bereich oder Bootsektor schreiben. ([:GRUB_2/Terminal_Befehle#grub-install: mehr zu grub-install]): {{{#!vorlage Befehl sudo grub-install /dev/sdX }}} `sdX` ist dabei an das [:GRUB_Umgebung_analysieren#Festplatten-Aufteilung-und-UUID: eigene System] anzupassen. ==GRUB 2 Pakete reinstallieren== Hat man Probleme, die sich durch Neuinstallation von GRUB 2 nicht beheben lassen, so kann man weiterhin versuchen, die GRUB 2 Pakete, die als Grundlage auch für die Neuinstallation von GRUB 2 auf dem System dienen, zu reinstallieren: Dies bewerkstelligt man einfach mit folgendem Befehl: {{{#!vorlage Befehl sudo apt-get install grub-common grub-pc os-prober --reinstall }}} Näheres zu dem Befehl erfährt man unter [:apt-get:]. ==Die Konfigurationsdatei neu erstellen oder aktualisieren== Die Konfiguration für das Auswahl-Menü ermitteln und in die Datei '''grub.cfg''' übertragen ([:GRUB_2/Terminal_Befehle#update-grub: mehr zu update-grub]): {{{#!vorlage Befehl sudo update-grub }}} ==Eine zusätzliche Konfigurationsdatei erstellen== Die aktuelle Konfiguration für das Auswahl-Menü ermitteln und in eine frei definierbare Datei speichern - die Datei '''grub.cfg''' bleibt dabei unverändert ([:GRUB_2/Terminal_Befehle#grub-mkconfig: mehr zu grub-mkconfig]): {{{#!vorlage Befehl sudo grub-mkconfig --output=/boot/grub/meine.cfg }}} schreibt die aktuelle Konfiguration in die Datei '''meine.cfg''' im Verzeichnis '''/boot/grub''', die Datei kann dabei an die eigenen Bedürfnisse angepasst werden. ==Die Datenträgerreihenfolge in die device.map schreiben== [[Bild(Wiki/Icons/develop.png, 36, left )]] Abweichung `device.map` unter Karmic Koala: Das Anlegen bzw. Erneuern der Datei '''/boot/grub/device.map''', wie es für Karmic Koala zwingend erforderlich ist, wird unter [:GRUB_2/Terminal_Befehle#grub-mkdevicemap: grub-mkdevicemap] beschrieben. GRUB 2 erstellt diese Datei für das richtige Setzen des MBR beim [#GRUB-2-vollstaendig-neuinstallieren Installieren] von GRUB 2. =Reparatur mittels Desktop-CD= {{{#!vorlage Hinweis Im folgenden wird davon ausgegangen, dass die verwendeten Desktop-CDs dem zu reparierenden System, insbesondere der Version von GRUB entsprechen! }}} ==Root-Directory-Methode== Bei dieser Variante wird GRUB 2 einfach in einem Terminal[2] von der Desktop-CD mittels des GRUB-2-Skripts [:GRUB_2/Terminal_Befehle#grub-install: grub-install] erneut auf die angegebene Partition bzw. Festplatte installiert: 1. Booten von einer [:Desktop-CD:]. 1. Ein Terminal[2] öffnen. 1. Lokalisieren des Datenträgers, sowie der Root- und gegebenenfalls Bootpartition (siehe [:GRUB_Umgebung_analysieren#Festplatten-Aufteilung-und-UUID: GRUB Umgebung analysieren]). 1. Einhängen der Partition, auf der die GRUB-Dateien abgelegt werden sollen - das ist das Verzeichnis '''/boot/grub''' und dessen Inhalt (siehe [:GRUB_2/Terminal_Befehle#grub-install: grub-install]). Dabei muss ``X`` durch die Plattenbezeichnung und ``Y`` durch die Partition ersetzt werden:{{{#!vorlage Befehl sudo mount /dev/sdXY /mnt}}}{{{Beispielanweisung: 1.Platte - 2. Partition sudo mount /dev/sda2 /mnt }}} 1. (Optionaler Schritt) Nutzt man auf dem System eine separate Boot-Partition, so muss diese ebenfalls eingehängt werden:{{{#!vorlage Befehl sudo mount /dev/sdXY /mnt/boot}}} 1. Devices von USB/CD einbinden{{{#!vorlage Befehl sudo mount --bind /dev/ /mnt/dev}}} 1. Jetzt reinstalliert man die GRUB-Dateien und schreibt GRUB in den MBR des entsprechenden Datenträgers:{{{#!vorlage Befehl sudo grub-install --root-directory=/mnt /dev/sdX }}}``sdX`` ist dabei an das [:GRUB_Umgebung_analysieren#Festplatten-Aufteilung-und-UUID: eigene System] anzupassen. 1. Nach dem Neustarten des Systems sollte GRUB korrekt arbeiten. Um die Datei '''grub.cfg''' auf den neuesten Stand zu bringen, empfiehlt sich noch ein{{{#!vorlage Befehl sudo update-grub }}} ==chroot-Methode== 1. Den Anweisungen der [:GRUB_2/Reparatur#Root-Directory-Methode:Root-Directory-Methode] bis inklusive "Devices von USB/CD einbinden" folgen. 1. [:chroot/Live-CD:Wechseln] in die chroot-Umgebung.{{{#!vorlage Befehl sudo chroot /mnt}}} 1. Dort führt man die folgenden Befehle aus: * Zunächst installiert man die GRUB-Dateien neu in das Verzeichnis '''/boot/grub''' und schreibt GRUB in den MBR des betreffenden Datenträgers. Dies erledigt der folgende Befehl:{{{#!vorlage Befehl grub-install /dev/sdX }}}``sdX`` ist dabei an das [:GRUB_Umgebung_analysieren#Festplatten-Aufteilung-und-UUID: eigene System] anzupassen. * Sollte es dabei zu Fehlern kommen, probiert man es mit:{{{#!vorlage Befehl grub-install --recheck /dev/sdX }}} * Anschließend erstellt man auf Grundlage der neu installierten Dateien die Datei '''/boot/grub/grub.cfg''' neu:{{{#!vorlage Befehl update-grub }}} 1. Abschließend muss man die chroot-Umgebung wieder mit [[Vorlage(Tasten, strg+D)]] [:chroot/Live-CD#Beenden: verlassen]. Nun sollte mindestens Ubuntu wieder über GRUB 2 starten können. Eventuell muss man aber dann die Konfigurations-Skripte noch den eigenen Bedürfnissen anpassen, um beispielsweise auch andere Betriebssysteme wieder wie zuvor starten zu können. {{{#!vorlage Hinweis Neben den hier verwendeten Befehlen `grub-install` und `update-grub` lassen sich in der chroot-Umgebung alle Befehle anwenden, die auch im [#Reparatur-im-laufenden-System laufenden System] verwendet werden können. }}} ==Wann welche Methode?== Die [#Root-Directory-Methode Root-Directory-Methode] kann man immer dann wählen, wenn man sicher ist, dass die Datei '''grub.cfg''' richtig ist und GRUB 2 nur deswegen nicht richtig startet, weil er nicht oder nicht mehr bzw. nicht mehr richtig im Bootsektor oder dem MBR der betreffenden Festplatte installiert ist. Diese Situation hat man z.B. stets, nachdem Windows nach Ubuntu auf dem System installiert wurde. Die [#chroot-Methode chroot-Methode] verwendet man immer dann, wenn man nur oder auch die '''grub.cfg''' neu erstellen lassen will. Außerdem sollte sie auch immer bei komplizierteren Systemkonstellationen wie [:LUKS:]- oder [:LVM: LV]-Partitionen sowie [:Software-RAID: Raid]-Verbunden angewendet werden. Die Root-Directory-Methode erfordert zwar weniger Einzelschritte, ist dabei aber auch weniger flexibel und erlaubt nicht so viele Reparatur-Optionen wie die chroot-Methode. Ist man sich nicht sicher, welche der beiden Methoden auf die eigene Situation anzuwenden ist, sollte man im Zweifel stets die chroot-Methode wählen, weil man mit ihr auf sämtliche GRUB-2-Befehle zurückgreifen kann, die man auch unter einem laufenden Ubuntu zur Verfügung hat. =Links= * [:GRUB_2/Probleme_und_Lösungen: GRUB 2 Probleme und Lösungen] * [:GRUB_2: GRUB 2 Übersicht] * [:GRUB_2/Installation: GRUB 2 Installation] * [:GRUB_2/Konfiguration: GRUB 2 Konfiguration] * [:GRUB_2/Skripte: GRUB 2 Skripte] * [:GRUB_Umgebung_analysieren: GRUB 2 Umgebung analysieren] * [:GRUB_2/Shell: GRUB 2 Shell] * [:GRUB_2/Thema: GRUB 2 Thema] * [:GRUB_2/Terminal_Befehle: GRUB 2 Terminal Befehle] * [:GRUB_2/Grundlagen: GRUB 2 Grundlagen] #tag: System, Bootloader