Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

tux:fix_grub2 [2011/09/28 16:15]
wikisysop
tux:fix_grub2 [2012/12/29 15:46] (aktuell)
wikisysop [Grub2 neu installieren]
Zeile 1: Zeile 1:
 [[:tux|{{ :​linux.png?​40|}}]] [[:tux|{{ :​linux.png?​40|}}]]
 ===== Aus einer Live CD (Knoppix) heraus Grub 2 neu installieren ===== ===== Aus einer Live CD (Knoppix) heraus Grub 2 neu installieren =====
- 
 Kürzlich bin ich mit einem System konfrontiert worden, welches unmittelbar nach dem Booten mit der Meldung >><​fc #​008000>​GRUB loading...</​fc><<​ stehen geblieben ist. Hier kann nur noch mit einem System aus einer Live CD heraus gestartet vernünftig weiter gearbeitet werden. Das System kann zB mit Knoppix gebootet werden, um weitere Analysen zu betreiben. Ein erster Blick sollte auf die installierte Festplatte geworfen werden, dazu eignet sich das >><​fc #​008000>​fdisk</​fc><<​-Kommando:​ Kürzlich bin ich mit einem System konfrontiert worden, welches unmittelbar nach dem Booten mit der Meldung >><​fc #​008000>​GRUB loading...</​fc><<​ stehen geblieben ist. Hier kann nur noch mit einem System aus einer Live CD heraus gestartet vernünftig weiter gearbeitet werden. Das System kann zB mit Knoppix gebootet werden, um weitere Analysen zu betreiben. Ein erster Blick sollte auf die installierte Festplatte geworfen werden, dazu eignet sich das >><​fc #​008000>​fdisk</​fc><<​-Kommando:​
  
 +==== Festplatten Analyse ====
 <​xterm>​knoppix@Microknoppix:​~$ <fc #​008000>​fdisk -l</​fc>​ <​xterm>​knoppix@Microknoppix:​~$ <fc #​008000>​fdisk -l</​fc>​
  
Zeile 25: Zeile 25:
 Was man sieht, sind eine Menge Partitionen mit relativ wenig Informationen dazu. >><​fc #​008000>/​dev/​sda1</​fc><<​ scheint dabei eine Partition für ein installiertes Windows zu sein. Um uns zu vergewissern,​ mounten wir diese Partition...:​ Was man sieht, sind eine Menge Partitionen mit relativ wenig Informationen dazu. >><​fc #​008000>/​dev/​sda1</​fc><<​ scheint dabei eine Partition für ein installiertes Windows zu sein. Um uns zu vergewissern,​ mounten wir diese Partition...:​
  
-<​xterm>​knoppix@Microknoppix:​~$ sudo mount -t ntfs /dev/sda1 /​media</​xterm>​+<​xterm>​knoppix@Microknoppix:​~$ ​<fc #008000>sudo mount -t ntfs /dev/sda1 /media</fc></​xterm>​
  
 ...und werfen mal einen Blick hinein: ...und werfen mal einen Blick hinein:
Zeile 46: Zeile 46:
 drwxrwxrwx 1 root root      28672 28. Sep 09:46 WINDOWS</​xterm>​ drwxrwxrwx 1 root root      28672 28. Sep 09:46 WINDOWS</​xterm>​
  
-Die Vermutung, dass hier noch ein zweites Betriebssystem installiert ist, scheint sich zu bestätigen. Weiterhin kann vermutet werden, dass es sich dabei um Windows XP handelt. Das erkennt man a) am Aufbau der Dateistruktur und b) am Vorhandensein der Datei >>​boot.ini<<,​ welche nach XP abgeschafft wurde und ab Vista durch das >><​fc #​008000>​BCD</​fc><<​ (Boot Configuration Data) ersetzt wurde. Aber im Prinzip wissen wir, was wir wissen wollten und können diese Partition wieder abhängen:+Die Vermutung, dass hier noch ein zweites Betriebssystem installiert ist, scheint sich zu bestätigen. Weiterhin kann vermutet werden, dass es sich dabei um Windows XP handelt. Das erkennt man a) am Aufbau der Dateistruktur und b) am Vorhandensein der Datei >><fc #008000>​boot.ini</fc><<, welche nach XP abgeschafft wurde und ab Vista durch das >><​fc #​008000>​BCD</​fc><<​ (Boot Configuration Data) ersetzt wurde. Aber im Prinzip wissen wir, was wir wissen wollten und können diese Partition wieder abhängen:
  
 <​xterm>​noppix@Microknoppix:​~$ <fc #​008000>​sudo umount /​media</​fc></​xterm>​ <​xterm>​noppix@Microknoppix:​~$ <fc #​008000>​sudo umount /​media</​fc></​xterm>​
  
-An dieser Stelle stellt sich noch die Frage, welcher Bootloader im >>​MBR<<​ installiert ist, weil sowohl der Windows Bootloader in Frage käme, was aber unwahrscheinlich ist), wie auch der Linux Bootloader könnte im >>​MBR<<​ installiert sein, muss es aber nicht zwingend. Dieser Frage gehen wir aber später nach.+An dieser Stelle stellt sich noch die Frage, welcher Bootloader im >><fc #008000>MBR</fc><< installiert ist, weil sowohl der Windows Bootloader in Frage käme, was aber unwahrscheinlich ist), wie auch der Linux Bootloader könnte im >><fc #008000>MBR</fc><< installiert sein, muss es aber nicht zwingend. Dieser Frage gehen wir aber später nach.
  
 Fortsetzung der Erläuterung zu den Partitionen:​ >><​fc #​008000>/​dev/​sda2</​fc><<​ ist die erweiterte bzw. logische Partition, welche für unser Problem nur am Rande, bis gar nicht interessant ist; >><​fc #​008000>/​dev/​sda8</​fc><<​ ist die Linux Swap Partition (ausgelagerter virtueller Arbeitsspeicher) und der Rest hat vermutlich mit unserem Linux zu tun, von dem wir wissen, dass es auch noch installiert ist. Hier stellt sich allerdings das Problem, dass das Linux System offensichtlich in mehrere Partitionen aufgeteilt ist und wir hier an dieser Stelle nicht erkennen können, was genau auf welcher Partition liegt. Ein starkes Indiz ist das gesetzte Bootflag auf der Partition >><​fc #​008000>/​dev/​sda5</​fc><<,​ falls diese Linux Installation über keine separate Boot-Partition verfügt (>><​fc #​008000>/​boot</​fc><<​ wäre dann ein eigener Mountpoint),​ stehen die Chancen gut, dass dies das Root-Verzeichnis der Linux Installation sein könnte. Um uns zu versichern, können wir diese Partition mal in das Knoppix System einbinden: Fortsetzung der Erläuterung zu den Partitionen:​ >><​fc #​008000>/​dev/​sda2</​fc><<​ ist die erweiterte bzw. logische Partition, welche für unser Problem nur am Rande, bis gar nicht interessant ist; >><​fc #​008000>/​dev/​sda8</​fc><<​ ist die Linux Swap Partition (ausgelagerter virtueller Arbeitsspeicher) und der Rest hat vermutlich mit unserem Linux zu tun, von dem wir wissen, dass es auch noch installiert ist. Hier stellt sich allerdings das Problem, dass das Linux System offensichtlich in mehrere Partitionen aufgeteilt ist und wir hier an dieser Stelle nicht erkennen können, was genau auf welcher Partition liegt. Ein starkes Indiz ist das gesetzte Bootflag auf der Partition >><​fc #​008000>/​dev/​sda5</​fc><<,​ falls diese Linux Installation über keine separate Boot-Partition verfügt (>><​fc #​008000>/​boot</​fc><<​ wäre dann ein eigener Mountpoint),​ stehen die Chancen gut, dass dies das Root-Verzeichnis der Linux Installation sein könnte. Um uns zu versichern, können wir diese Partition mal in das Knoppix System einbinden:
Zeile 82: Zeile 82:
 lrwxrwxrwx ​ 1 root root    25 28. Sep 11:37 vmlinuz -> boot/​vmlinuz-2.6.32-5-686</​xterm>​ lrwxrwxrwx ​ 1 root root    25 28. Sep 11:37 vmlinuz -> boot/​vmlinuz-2.6.32-5-686</​xterm>​
  
-Schaut ganz gut aus, jetzt können wir uns die weiteren Partitionen ein weniger genauer anschauen, dazu schauen wir uns die Datei >>/​etc/​fstab<<​((http://​wiki.ubuntuusers.de/​FSTAB)) an:+Schaut ganz gut aus, jetzt können wir uns die weiteren Partitionen ein weniger genauer anschauen, dazu schauen wir uns die Datei >><fc #008000>/​etc/​fstab</fc><<​((http://​wiki.ubuntuusers.de/​FSTAB)) an:
  
 <​xterm>​$ <fc #​008000>​cat /​media/​etc/​fstab</​fc> ​ <​xterm>​$ <fc #​008000>​cat /​media/​etc/​fstab</​fc> ​
Zeile 131: Zeile 131:
 <​xterm>​knoppix@Microknoppix:​~$ <fc #​008000>​sudo cp /​proc/​mounts /​media/​etc/​mtab</​fc></​xterm> ​ <​xterm>​knoppix@Microknoppix:​~$ <fc #​008000>​sudo cp /​proc/​mounts /​media/​etc/​mtab</​fc></​xterm> ​
  
 +
 +
 +==== In »chroot« Umgebung wechseln ====
 Damit wir uns jetzt sicher im eigentlich installierten (Basis-) System bewegen können und um zu verhindern, dass Befehle, welche wir zum Debuggen des Fehlers bzw. zum Neuinstallieren von Grub nicht versehentlich im Knoppix System vorgenommen werden, wechseln wir in das Basis-System über eine >><​fc #​008000>​chroot</​fc><<​-Umgebung((http://​de.wikipedia.org/​wiki/​Chroot)). Damit wir uns jetzt sicher im eigentlich installierten (Basis-) System bewegen können und um zu verhindern, dass Befehle, welche wir zum Debuggen des Fehlers bzw. zum Neuinstallieren von Grub nicht versehentlich im Knoppix System vorgenommen werden, wechseln wir in das Basis-System über eine >><​fc #​008000>​chroot</​fc><<​-Umgebung((http://​de.wikipedia.org/​wiki/​Chroot)).
  
Zeile 137: Zeile 140:
 Somit befinden wir uns jetzt auf dem eigentlich installierten System und nutzen im Prinzip nur noch den Kernel des Knoppix Systems. Anders ausgedrückt sind wir nun für das Knoppix System nur noch ein Prozess, welcher aber im gesamten ein quasi virtuelles System auf Basis des eigentlich installierten System darstellt. ​ Somit befinden wir uns jetzt auf dem eigentlich installierten System und nutzen im Prinzip nur noch den Kernel des Knoppix Systems. Anders ausgedrückt sind wir nun für das Knoppix System nur noch ein Prozess, welcher aber im gesamten ein quasi virtuelles System auf Basis des eigentlich installierten System darstellt. ​
  
 +==== Grub2 neu installieren ====
 +Da wir uns jetzt in einer >><​fc #​008000>​chroot</​fc><<​ Umgebung und somit quasi in unserem eigentlich installierten System aufhalten, können wir die übliche Vorgehensweise zur Reparatur des Bootloaders vornehmen.
 +
 +Zuerst erstellen wir eine neue Grub.cfg Datei mit Hilfe des >><​fc #​008000>​grub-mkconfig</​fc><<​ Kommandos:
 +
 +<​xterm>​root@Microknoppix:/#​ <fc #​008000>​grub-mkconfig -o /​boot/​grub/​grub.cfg</​fc>​
 +Generating grub.cfg ...
 +Found linux image: /​boot/​vmlinuz-2.6.32-5-686
 +Found initrd image: /​boot/​initrd.img-2.6.32-5-686
 +done</​xterm>​
 +
 +Danach rufen wir das Skript >><​fc #​008000>​grub-install</​fc><<​ auf. Dadurch werden eine Reihe von Aufgaben erledigt, darunter das Anlegen des Verzeichnisses >><​fc #​008000>/​boot/​grub</​fc><<​ (falls dieses noch nicht existiert) und installiert die Kernkomponenten von Grub2 in den >><​fc #​008000>​MBR</​fc><<​ des angegebenen Datenträgers:​
 +
 +<​xterm>​root@Microknoppix:/#​ <fc #​008000>​grub-install /​dev/​sda</​fc>​
 +Installation finished. No error reported.</​xterm>​
 +
 +Danach wäre der Bootloader neu installiert und das System sollte wieder starten:
 +
 +<​xterm>​root@Microknoppix:/#​ <fc #​008000>​reboot</​fc></​xterm>​
 +
 +Wenn die Probleme dadurch nicht behoben sind, können Sie die Grub2 Pakete vollständig neu installieren,​ indem Sie sich diese erneut herunterladen. Beachten Sie hierbei bitte, dass Sie eine Internetverbindung benötigen, wenn Sie die Quellen nicht lokal (zB auf DVD) zur Verfügung haben:
 +
 +<​xterm>​root@Microknoppix:/#​ <fc #​008000>​aptitude update</​fc>​
 +root@Microknoppix:/#​ <fc #​008000>​aptitude reinstall grub-common grub-pc os-prober # grub-gfxpayload-lists</​fc></​xterm>​
 +
 +**Verwandte Artikel:**
 +[[:​tux:​conres|->​ Auflösung der Konsole in Grub2 ändern]]
  
 + --- //pronto 2012/12/29 15:21//
 +{{keywords>​grub2 reinstall grub-install update-grub grub-mkconfig grub.cfg}}
tux/fix_grub2.1317219359.txt.gz (35899 views) · Zuletzt geändert: 2011/09/28 16:15 von wikisysop
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0