it-swarm.com.de

Grub Rescue - Fehler: unbekanntes Dateisystem

Ich habe ein Multiboot-System eingerichtet. Das System verfügt über drei Laufwerke. Multiboot ist mit Windows XP, Windows 7 und Ubuntu konfiguriert - alles auf dem ersten Laufwerk. Ich hatte viel nicht partitionierten Speicherplatz auf dem Laufwerk und reservierte ihn für das Hinzufügen anderer Betriebssysteme und das Speichern von Dateien in der Zukunft.

Eines Tages habe ich Partition Wizard heruntergeladen und eine logische NTFS-Partition in Windows 7 erstellt, wobei noch nicht partitionierter Speicherplatz übrig war. Alles hat gut funktioniert, bis ich den Computer ein paar Tage später neu startete.

Jetzt bekomme ich:

error: unknown filesystem.  
grub rescue>

Zunächst war ich überrascht, keinen Hilfebefehl zu finden, indem ich versuchte:

help, ?, man, --help, -h, bash, cmd usw.

Jetzt stecke ich mit nicht bootfähigem System fest. Ich habe begonnen, das Problem zu untersuchen und herauszufinden, dass die Leute normalerweise empfehlen, von einer Live-CD zu booten und das Problem von dort aus zu beheben. Gibt es eine Möglichkeit, dieses Problem innerhalb von Grub Rescue zu beheben, ohne dass eine Live-CD erforderlich ist?

UPDATE

Durch Befolgen der Schritte von Persist-Befehle, die in GRUB rescue eingegeben wurden konnte ich initramfs Prompt starten. Aber nirgendwo weiter.

Bisher habe ich nicht das Handbuch zu Grub Rescue gelesen, sondern konnte meine Laufwerke und Partitionen mit dem Befehl ls anzeigen. Für die erste Festplatte sehe ich folgendes:
(hd0) (hd0, msdos6) (hd0, msdos5) (hd0, msdos2) (hd0, msdos1)

Ich weiß jetzt, dass (hd0, msdos6) Linux enthält, da ls (hd0,msdos6)/ Verzeichnisse auflistet. Andere geben "Fehler: unbekanntes Dateisystem".

UPDATE 2

Nach den folgenden Befehlen komme ich nun in das Boot-Menü und kann in Windows 7 und Ubuntu booten, aber nach dem Neustart muss ich diese Schritte wiederholen.

ls
ls (hd0,msdos6)/
set root=(hd0,msdos6)
ls /
set prefix=(hd0,msdos6)/boot/grub
insmod /boot/grub/linux.mod
normal

UPDATE 3

Vielen Dank Shashank Singh, mit Ihren Anweisungen habe ich meine Schritte wie folgt vereinfacht. Ich habe von Ihnen gelernt, dass ich msdos6 durch nur eine 6 ersetzen kann und dass ich nur insmod normal anstelle von insmod /boot/grub/linux.mod ausführen kann. Jetzt muss ich nur noch herausfinden, wie ich diese Einstellungen in grub selbst speichern kann, ohne ein Betriebssystem zu booten.

set root=(hd0,6)
set prefix=(hd0,6)/boot/grub
insmod normal
normal

UPDATE 4

Nun, es scheint eine Voraussetzung zu sein, um Linux zu booten. Nach dem Booten von Ubuntu habe ich die folgenden Schritte ausgeführt, die im Handbuch beschrieben sind:

Sudo update-grub
Sudo grub-install /dev/sda

Das Problem wurde dadurch nicht behoben. Ich bekomme immer noch die Grub Rescue Prompt. Was muss ich tun, um das Problem dauerhaft zu beheben?

Ich habe auch gelernt, dass Laufwerksnummern wie in hd0 für einige Befehle in Laufwerksbuchstaben wie in/dev/sda übersetzt werden müssen. hd1 wäre sdb, hd2 wäre sdc und so weiter. In grub als (hd0, msdos6) aufgeführte Partitionen würden in/dev/sda6 übersetzt.

UPDATE 5

Ich konnte nicht herausfinden, warum die folgenden Probleme nicht behoben wurden:

Sudo update-grub
Sudo grub-install /dev/sda

Also habe ich boot-repair basierend auf einer Antwort von https://help.ubuntu.com/community/Boot-Repair post heruntergeladen. Das schien der Trick zu sein, nachdem ich die Option "Empfohlene Reparatur (repariert die häufigsten Probleme)" ausgewählt hatte.

57
user53817

Ich konnte nicht herausfinden, warum die folgenden Probleme nicht behoben wurden:

Sudo update-grub
Sudo grub-install /dev/sda

Also habe ich Boot-Repair basierend auf einer Antwort von Persist-Befehle, die in GRUB rescue eingegeben wurden post heruntergeladen. Das schien der Trick zu sein, nachdem ich die Option "Empfohlene Reparatur (repariert die häufigsten Probleme)" ausgewählt hatte.

Ich habe auch Grub Customizer verwendet, um die Reihenfolge der Starteinträge anzupassen.

23
user53817

Es gibt eine alternative Ursache für dieses Problem. In diesem speziellen Fall war GRUB irgendwie beschädigt und musste repariert oder neu installiert werden. Wie in Grub-Rettung schlägt mit "Boot Repair" mit dem Fehler "unknown file system" fehl gezeigt, ist es jedoch auch möglich, dass die Root-Partition, auf der GRUB installiert ist, beschädigt wird. Um dies zu beheben:

Dies ist eine mögliche Lösung, sollte jedoch nicht verwendet werden, damit Ihre Root-Partition nicht weiter beschädigt wird. Wenn Sie den Befehl fsck -t ext4 /dev/sda1 ausführen, versucht dieses Programm, Fehler in einem beschädigten Dateisystem zu suchen und zu reparieren. Ersetzen Sie sda1 durch Ihre eigentliche Root-Partition. Ersetzen Sie ext4 durch das aktuelle Dateisystem. Sie müssen das Dateisystem kennen, sonst wird die Partition mehr beschädigt. Weitere Informationen finden Sie unter Reparieren eines beschädigten Dateisystems .


Obwohl diese Frage eine Antwort hat, gibt es eine alternative Möglichkeit, das Problem zu beheben, das für mich funktioniert hat. Die Schritte werden im schmerzhaften Video erklärt Grub Rescue - Guide für Anfänger . Kurz gesagt, GRUB 2 wird neu installiert, anstatt es zu reparieren.

Da dieses Video so schmerzhaft ist, liste ich die folgenden Schritte auf (wie ich sollte, unabhängig davon, wie schmerzhaft es ist, das Video anzuschauen).

  1. Starten Sie eine Live-Sitzung von Ubuntu. Das Video verwendet eine Live-CD, während ich ein Live-USB verwendet habe. Ich habe dafür gesorgt, dass der Live-USB die gleiche Ubuntu-Version hat, die ich auf meiner Festplatte hatte.
  2. Finden Sie heraus, wo Ihre Root-Partition gemountet wurde. In dem Video navigiert der Benutzer mit Nautilus durch jedes bereitgestellte Laufwerk. Es war mit einer langen Reihe von Zahlen und Zeichen montiert. Befolgen Sie in diesem Fall die folgenden Schritte, um die Partition erneut bereitzustellen. Fahren Sie andernfalls mit Schritt 5 fort.
  3. Rufen Sie das Terminal mit auf Ctrl + Alt + T Verwenden Sie den Befehl mount, um den Namen der Partition zu ermitteln.
  4. Hängen Sie die Partition ein. Erstellen Sie einen neuen Ordner in Ihrem Medienordner. Sudo mkdir /media/ubuntu. Dann mounten Sie einfach Ihre Partition in diesen Ordner. Sudo mount /dev/sdxx /media/ubuntu wobei xx von sdxx in Schritt 3 bestimmt wird.
  5. Binden Sie die folgenden Verzeichnisse aus dem Stammverzeichnis Ihrer Live-CD/USB an das Verzeichnis Ihres Stammverzeichnisses in Ihrer Ubuntu-Version. Die Verzeichnisse sind devproc und sys. Tun Sie dies mit den folgenden Befehlen:

    Sudo mount --bind /dev /media/ubuntu/dev
    Sudo mount --bind /sys /media/ubuntu/sys
    Sudo mount --bind /proc /media/ubuntu/proc
    
  6. Ändern Sie das Stammverzeichnis in das auf Ihrer Ubuntu-Partition. Sudo chroot /media/ubuntu/

  7. Nachdem Sie die obigen Schritte ausgeführt haben, wird GRUB 2 durch erneutes Installieren im Stammverzeichnis Ihrer Ubuntu-Distribution und nicht auf der Live-CD/USB installiert. Also mach weiter und starte Sudo grub-install /dev/sdx

Und so können Sie GRUB mit einer Live-CD/USB reparieren. Diese Methode wurde vom YouTube-Nutzer crazytechzone entwickelt.

7
Nil

Komisch, ich hatte vor einer Stunde auch das gleiche Problem!

Jedenfalls habe ich das getan.

  1. Ubuntu laden:

    set root=(hd0,6)
    set prefix=(hd0,6)/boot/grub
    insmod normal
    normal
    

    seit wann ist dein ubuntu in 6 installiert oder?

  2. terminal ausführen:

    Sudo -i *to access root*
    grub-install --root-directory=/mnt/ /dev/sda
    Sudo update-grub
    Sudo grub-install /dev/sda
    
3
Francis

Eine weitere Ursache für das Problem ist, dass das Dateisystem auf dem Startlaufwerk in seltenen Fällen abstürzt. Wie in anderen Antworten erwähnt, verwende ich zunächst den Befehl ls, um alle Laufwerke/Partitionen in der Rettungsaufforderung GRUB aufzulisten, aber all unbekannten Dateisystemfehler melden . Ich habe das Problem unter Ubuntu 16.04 (Xenial Xerus) endlich behoben, indem ich das Dateisystem wie folgt wiederhergestellt habe:

  1. Booten von einem USB-Stick (Ubuntu ohne Installation ausprobieren)

  2. Suchen Sie das Startlaufwerk (überprüfen Sie die Laufwerkskapazität oder führen Sie fsck auf jeder Partition aus):

    Sudo fdisk -l
    
  3. Stellen Sie das Dateisystem wieder her:

    Sudo fsck /dev/sdb1
    
  4. Nachdem das Dateisystem repariert und sauber ist, starten Sie den Computer vom Startlaufwerk aus neu.

0
user84246