error: file '/grub/i386-pc/normal.mod' not found.
grub rescue>
Was kann ich machen? Ich sitze nur und starre es an.
Ich habe mein altes Netbook (Dell Inspiron 1010) gefunden, das ich seit etwa vier Jahren nicht mehr benutzt habe. Ich habe Windows XP durch Ubuntu 12.10 ersetzt. Ich habe mein bootfähiges USB-Laufwerk verwendet. Ich habe es installiert und neu gestartet. Ich habe die Nachricht erhalten, normal.mod
die nicht gefunden wurde.
Was soll ich machen? Typ exit
, reboot
oder quit
? Sollte ich neu installieren?
use your windows partition as your primary boot device
. Dieser letzte Schritt ist wichtig. NICHT BENUTZEN / booten. Möglicherweise gibt es eine andere Lösung: Versuchen Sie, das Startgerät während des Startvorgangs manuell zu ändern. Ich denke jedoch nicht, dass das funktionieren wird. Dies ist ein seit langem bestehendes Problem, das in Ubuntu bis einschließlich 17.10 weiterhin besteht. Danke.Antworten:
Grub hat ein kleines Core-Image, das beim Booten geladen wird. Das Kernimage lädt dynamisch Module, die weitere Funktionen bereitstellen.
i386-pc/normal.mod not found
gibt an, dass grub normal.mod nicht laden kann. Hierbei handelt es sich um ein Grub-Modul, das den normalen Befehl bereitstellt . Um normal.mod zu laden, musst du grub mitteilen, wo es ist. Verwenden Sie dazu die Befehlszeile von grub (auch bekannt als Rescue Console). Grub startet die Befehlszeile, wenn beim Booten ein Problem auftritt, oder Sie können sie manuell starten, indem Sie beim Start von Grub die Umschalttaste gedrückt halten (um das Grub-Menü zu erzwingen) und dann die Taste 'c' drücken.Mit grub können Sie die Laufwerke, Partitionen und Dateisysteme erkunden. Du musst:
Beispiel
Das Folgende ist nur ein Beispiel. Sie müssen es an Ihr lokales Laufwerk und Ihre Partition anpassen.
wo ist normal.mod Sehen Sie sich einige wahrscheinliche Orte an
Wenn
"Unknown command 'search.file'"
dies angezeigt wird, ist der Befehl search.file nicht verfügbar. Dies liegt wahrscheinlich daran, dass Sie an dergrub rescue>
Eingabeaufforderung und nicht an dergrub>
Eingabeaufforderung stehen. In diesem Fall können Sie weiterhin denls
Befehl verwenden und Ihre Kenntnisse über das Partitionslayout ermittelnnormal.mod
.fand es um (hd0, msdos1)
warum hat grub es nicht gefunden?
check $ prefix - absoluter Speicherort des Grub-Verzeichnisses
(dies wird festgelegt, wenn Grub von Grub-Install installiert wird)
check $ root - Standardgerät für Pfade, die keinen Geräte-
Grub enthalten, setzt dies zunächst auf das Gerät mit dem Präfix $
root und prefix zeigen auf die falsche Partition (hd0, msdos2)
setze $ root und $ prefix auf die Partition, auf der wir normal.mod gefunden haben (hd0, msdos1)
Laden Sie das normale Modul und führen Sie es aus
Einige andere Befehle, die hilfreich sein können
ls listet alle Geräte und Partitionen auf
ls Partition
ls Dateisystem (Anmerkung / am Ende)
Das
Vorhandensein des Verzeichnisses i386-pc in / boot / grub bedeutet, dass dies eine BIOS-Installation ist. Das
Vorhandensein des Verzeichnisses x86_64-efi weist auf eine EFI-Installation hin
search
odersearch.file
nicht$prefix
richtig erkannt wurden und dann doinsmod search
, forls
doinsmod ls
usw. Führen Siefind /boot/grub -name *.mod
eine funktionierende Linux-Installation aus, um alle dynamisch geladenen Grub-Module anzuzeigen.quelle
sudo grub-install /dev/sdX
, um meine Grub zu installieren. Ich denke, die LVM-Installation hat meine Angelegenheit irgendwie verwirrt.Hab das heute Nachmittag auf einer Maschine gelöst. Es scheint, dass eine Ursache für dieses Problem der Installer ist, der denkt, dass Sie einen sicheren EFI-Start haben, wenn Sie dies nicht tun und daher die falschen GRUB-Dateien laden.
Sie müssen lediglich GRUB 2 installieren. Dazu müssen Sie von der Live-Instanz booten, Ihre Root-Partition mounten und installieren.
Suchen Sie in einer Live-Instanz die Partition, auf der Ihre Root-Partition geladen ist. GParted wird Ihnen dies mitteilen, oder Sie könnten es verwenden
Gehen Sie zu der Partition, in der Ubuntu installiert ist.
Sobald Sie Ihre Partition haben, müssen Sie sie mounten. Angenommen, die Root-Partition ist auf / dev / sda5, dann wäre das:
Dann installiere GRUB 2
sudo grub-install /dev/sda --root-directory=/mnt
[Verwenden Sie Kopieren und Einfügen für diese, da einige Leerzeichen erforderlich sind, um sie zu korrigieren.]Angenommen, dies ist Ihr Problem, dann sollten Sie in der Lage sein, neu zu starten und alles wird gut funktionieren.
Die ursprüngliche Lösung hierfür war von hier: http://ubuntujournal.blogspot.com/2012/11/fix-new-install-of-ubuntu-1210-wont-boot.html
quelle
Ich habe diese Informationen nicht in den Foren gefunden, daher möchte ich einige Informationen weitergeben, obwohl diese Frage vor langer Zeit gestellt wurde:
Wenn Sie eine große (z. B. 1 TB) Partition mit Ubuntu installiert haben und für / boot / keine zusätzliche Partition zugewiesen haben, könnte dies der Grund für solche Fehler sein. Beim Start von GRUB wird der Biosdisk-Treiber zum Lesen normaler Treiber aus dem Verzeichnis / boot / grub / verwendet. Manchmal könnte sich dieses Verzeichnis physisch auf der Festplatte befinden, irgendwo nach dem vom Biosdisk-Sektor unterstützten Maximum. Das Problem kann beispielsweise nach einem System-Upgrade auftreten. Auch ich bin immer mit diesem Problem nach der Neuinstallation von Ubuntu 13.10 konfrontiert, aber es kann sich unterscheiden, da es von Motherboard / BIOS abhängt.
Sie können mithilfe der Grub-Wiederherstellung überprüfen, ob nach dem Festlegen von PREFIX und ROOT das Problem mit ls / boot besteht, wenn Sie nichts sehen, aber beim Booten von einer Live-CD / einem Flash-Laufwerk Dateien dort sehen können .
Sie können verschiedene Aktionen ausführen, um das System bootfähig zu machen. Sie können dieses Problem jedoch in Zukunft (während eines Dist-Upgrades) nur vermeiden, indem Sie das Verzeichnis / boot auf einer separaten kleinen Partition ablegen.
quelle
Andere Lösungen funktionieren möglicherweise nicht, wenn Sie zur
grub-rescue
Eingabeaufforderung gelangen und / oder Ihre Konfiguration LVM verwendet. Dies sollte der Fall sein.Booten Sie von einer Rettungsdiskette (Tipp: Ich behalte eine kleine Distribution auf einer dedizierten Partition meiner USB-Sicherungsdiskette).
Wenn Sie LVM verwenden, suchen Sie den Namen Ihrer Datenträgergruppe mit
lvdisplay
oder einem anderen LVM-bezogenen Befehl. Aktivieren Sie es (andernfallsmount: special drive /dev/volumegroupname/partition does not exist
wird beim Einhängen ein Fehler angezeigt):Hängen Sie nun Ihre übliche
/
Partition ein, zB auf/mnt
:Mounten Sie auch einige spezielle Geräte (sowie
/boot
auf einer separaten Partition):Dann
chroot
in Ihre übliche Verteilung:Schließlich installieren Sie GRUB2 neu - Befehle können abhängig von Ihrer Distribution variieren, dies funktioniert auf Slackware (wenn Ihr Laufwerk ist
/dev/sda
):Starten Sie neu und Sie sollten fertig sein.
quelle
DIE AUSGEWÄHLTE ANTWORT FUNKTIONIERT NIEMALS.
DAS FUNKTIONIERT:
Der zweite Schritt ist unerlässlich .
NICHT VERWENDEN
/boot
.Möglicherweise gibt es eine andere Lösung: Versuchen Sie, das Startgerät während des Startvorgangs manuell zu ändern. Ich glaube jedoch nicht, dass das funktionieren wird, und ich muss es noch testen.
Dies ist ein seit langem bestehendes Problem, das in Ubuntu bis einschließlich 17.10 weiterhin besteht.
quelle