Ich habe eine blöde Sache gemacht ... Ich habe vergessen, dass Ubuntu 10.04 (Lucid Lynx) auf GRUB 2 umgestellt hat, das eine Menge * .mod-Dateien (Kernelmodule) enthält /boot/grub
. Ich dachte, es handele sich um Soundtrack-Dateien, die fälschlicherweise dort abgelegt wurden, und ich habe sie verschoben. Der nächste Neustart war natürlich traumatisch. Mir wurde etwas präsentiert, von dem ich keine Erinnerung hatte, dass ich es jemals gesehen hatte ... eine Aufforderung zur Rettung der Maden.
Mit Hilfe von Fixing GRUB error: "error: unknown filesystem" konnte ich jedoch ...
- Ich habe festgestellt, dass GRUB rescue keine Befehle für 'cd', 'cp' oder ein anderes Dateisystem enthält, mit Ausnahme seiner eigenen Variation von 'ls'.
Also zuerst hatte ich die Partition mit dem finden
/boot
Verzeichnis mitvmlinuz
Datei und andere Boot - Image - Dateien ... (Annäherung aus dem Speicher von Fehlversuchen, sowie Leerzeilen aus Gründen der Klarheit hinzugefügt 2014.07.10 von docsalvage)grub rescue> ls (hd0,4) (hd0,3) (hd0,2) (hd0,1) grub rescue> ls (hd0,4)/boot ... some kind of 'not found' message grub rescue> ls (hd0,3)/boot ... some kind of 'not found' message grub rescue> ls (hd0,2)/boot ... grub ... initrd.img-2.6.32-33-generic ... vmlinuz-2.6.32-33-generic
Ich habe ein
/boot
Verzeichnis gefunden, das dievmlinuz
Dateivmlinuz-2.6.32-33-generic
auf der Partition enthält(hd0,2)
.Dann habe ich manuell über die Eingabeaufforderung 'grub rescue>' gebootet. Die folgenden Befehle werden ...
- Legen Sie fest
root
, dass das/boot
Verzeichnis auf der Partition verwendet werden soll(hd0,2)
. - Laden Sie das Kernel-Modul
linux
. - Stellen Sie dieses Modul so ein, dass es das Kernel-Image verwendet
vmlinuz-2.6.32-33-generic
. - Stellen Sie initrd (RAM-Disk initialisieren) ein, um das Image zu verwenden
initrd.img-2.6.32-33-generic
. - Booten Sie Linux.
- Legen Sie fest
grub rescue> set root=(hd0,2)/boot grub rescue> insmod linux grub rescue> linux (hd0,2)/boot/vmlinuz-2.6.32-33-generic root=/dev/sda2 grub rescue> initrd (hd0,2)/boot/initrd.img-2.6.32-33-generic grub rescue> boot
Dies startet und stürzt bei der BusyBox-Eingabeaufforderung ab, die einige rudimentäre Dateisystembefehle enthält.
Dann habe ich die * .mod-Dateien zurück in das
/boot/grub
Verzeichnis verschoben ...busybox> cd /boot busybox> mv mod/* grub busybox> reboot
Der Neustart war erfolgreich, aber das war eine Menge Arbeit.
Gibt es einen einfacheren Weg?
grub> linux (hd0,X)/boot/vmlinuz-a.b.c-d-generic root=/dev/sdaX
Wo X
befindet sich die Partition /boot
, a.b.c-d
befindet sich die Kernel-Version? Dann ist mein System gut gebootet! Vielen Dank!