GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So verwenden Sie Grub Rescue, um Linux-Startfehler zu beheben

Einführung

Der GRUB (Grand Unified Bootloader) ist ein Tool zum Booten und Laden von Betriebssystemkernen und der Standard-Bootloader für Systeme, die auf dem Linux-Kernel basieren. Obwohl es zuerst ausgeführt wird, wenn ein Computer eingeschaltet wird, sehen normale Benutzer GRUB selten in Aktion. Es funktioniert automatisch und erfordert keine Benutzereingaben.

Wenn Sie jedoch versuchen, ein anderes Betriebssystem neben Linux auf demselben Computer zu booten, überschreibt der Bootloader des anderen Systems möglicherweise GRUB, was dazu führt, dass das Linux-System nicht booten kann.

Dieser Artikel zeigt Ihnen, wie Sie Linux-Boot-Fehler mit GRUB Rescue-Befehlen und dem Boot-Reparatur-Tool beheben können.

Voraussetzungen

  • Ein Konto mit sudo-Berechtigungen.
  • Zugriff auf die Befehlszeile.

GRUB-Startprobleme

Der häufigste Grund dafür, dass GRUB nicht in das Betriebssystem bootet, ist, dass der Bootloader eines anderen Betriebssystems die GRUB-Boot-Konfiguration überschreibt. Das Problem tritt bei einem Dual-Boot-Versuch mit einer bestehenden Linux-Installation auf. Ein weiterer Grund ist das versehentliche Entfernen von GRUB-Konfigurationsdateien.

Wenn GRUB das System nicht booten kann, erscheint die GRUB Rescue-Eingabeaufforderung.

Das obige Beispiel zeigt, dass GRUB den Fehler „no such partition“ anzeigt, bevor die grub rescue angezeigt wird prompt. Ein weiterer häufiger GRUB-Fehler ist „Unbekanntes Dateisystem“, gefolgt von der gleichen Eingabeaufforderung.

Manchmal zeigt der Bildschirm den grub Nur Eingabeaufforderung.

GRUB-Rettungsbefehle

Nachfolgend finden Sie eine Liste der häufig verwendeten GRUB-Rescue-Befehle. Verwenden Sie die Befehle in den Eingabeaufforderungen, die im vorherigen Abschnitt erwähnt wurden.

Befehl Beschreibung Beispiel
boot Booten starten (Tastenkürzel:F10 , STRG + x ). Der Befehl wird ohne Argumente ausgegeben.
cat Den Inhalt einer Datei in die Standardausgabe schreiben. cat (hd0,1)/boot/grub/grub.cfg
configfile Lade eine Konfigurationsdatei. configfile (hd0,1)/boot/grub/grub.cfg
initrd Laden Sie die Datei initrd.img. initrd (hd0,1)/initrd.img
insmod Modul laden. insmod (hd0,1)/boot/grub/normal.mod
loopback Mounten Sie eine Image-Datei als Gerät. loopback loop0 (hd0,1)/iso/image.iso
ls Den Inhalt eines Verzeichnisses oder einer Partition anzeigen. ls (hd0,1)
lsmod Zeigt eine Liste der geladenen Module an. Der Befehl wird ohne Argumente ausgegeben.
normal Aktiviere das normale Modul. Der Befehl wird ohne Argumente ausgegeben.
search Nach Geräten suchen. Option --file sucht nach Dateien, --label sucht nach Labels, --fs-uuid sucht nach Dateisystem-UUID. search -file [filename]
set Setzen Sie eine Umgebungsvariable. Wenn er ohne Argumente ausgegeben wird, gibt der Befehl die Liste aller Umgebungsvariablen und ihrer Werte aus. set [variable-name]=[value]

Startfehler behoben

In diesem Tutorial werden zwei Möglichkeiten zum Beheben von GRUB-Startproblemen mithilfe der GRUB-Rescue-Eingabeaufforderung behandelt , und das Boot-Reparatur-Tool .

Über das Grub-Terminal

1. Verwenden Sie den set-Befehl ohne Argumente, um die Umgebungsvariablen anzuzeigen:

set

Die Beispielausgabe zeigt, dass GRUB so eingerichtet ist, dass es von (hd0,msdos3) bootet Partition:

2. Der Befehl ls listet die verfügbaren Partitionen auf der Festplatte auf.

ls

Die Ausgabe zeigt die Partitionsliste.

Verwenden Sie das ls Befehl, um die Partition zu finden, die den boot enthält Verzeichnis.

ls [partition-name]

Das Beispiel zeigt den boot Verzeichnis im (hd0,msdos1) Partition.

3. Legen Sie die Startpartition als Wert von root fest Variable. Das Beispiel verwendet die Partition namens (hd0,msdos1) .

set root=(hd0,msdos1)

4. Laden Sie den normal Boot-Modus.

insmod normal

5. Starten Sie den normal Boot-Modus.

normal

Der normal -Modus können Sie komplexere Befehle ausführen.

6. Laden Sie den Linux-Kernel mit linux Befehl.

linux /boot/vmlinuz-4.2.0-16-generic root=/dev/sda1 ro

7. Geben Sie boot aus Befehl.

boot

Das System bootet jetzt ordnungsgemäß.

Über Livebild

Eine andere Möglichkeit, Ihre GRUB-Boot-Probleme zu beheben, besteht darin, ein Linux-Live-Image zu verwenden, um von einem externen Gerät zu booten.

1. Laden Sie ein Live-Linux-Installationsprogramm herunter. Dieses Beispiel verwendet das ISO-Image von Ubuntu 20.04.

2. Verwenden Sie ein Tool wie Etcher, um das Linux-Image auf eine SD-Karte oder ein USB-Flash-Laufwerk zu schreiben.

3. Legen Sie das bootfähige Gerät ein und starten Sie den Computer.

4. Wählen Sie Ubuntu ausprobieren auf dem Willkommensbildschirm.

5. Wenn das Live-System hochfährt, stellen Sie eine Verbindung zum Internet her.

6. Öffnen Sie das Terminal und geben Sie den folgenden Befehl ein, um das Repository für das Boot Repair Tool hinzuzufügen.

sudo add-apt-repository ppa:yannubuntu/boot-repair

Drücken Sie Eingabe und warten Sie, bis das Repository hinzugefügt wird.

7. Aktualisieren Sie die Repositories.

sudo apt update

8. Installieren Sie das Boot-Reparatur-Tool.

sudo apt install boot-repair

9. Starten Sie das Boot Repair Tool über das Terminal.

boot-repair

10. Wählen Sie Empfohlene Reparatur .

Warten Sie, bis das Tool die Reparatur des Bootloaders abgeschlossen hat.

GRUB-Konfigurationsdatei aktualisieren

Wenn das System erfolgreich hochgefahren ist, stellen Sie sicher, dass die GRUB-Konfiguration auf dem neuesten Stand ist.

Führen Sie diesen Befehl aus:

update-grub

GRUB neu installieren

Führen Sie die folgenden Schritte aus, um GRUB auf Ihrem Linux-System neu zu installieren.

1. Mounten Sie die Partition, die die Betriebssysteminstallation enthält. Das Beispiel stellt /dev/sda1 bereit Partition nach /mnt Verzeichnis.

sudo mount /dev/sda1 /mnt

2. Binden Sie /dev , /dev/pts , /proc , und /sys Verzeichnisse in die entsprechenden Verzeichnisse in /mnt Ordner.

sudo mount --bind /dev /mnt/dev &&
sudo mount --bind /dev/pts /mnt/dev/pts &&
sudo mount --bind /proc /mnt/proc &&
sudo mount --bind /sys /mnt/sys

3. Installieren Sie GRUB.

sudo grub-install -root-directory=/mnt/ /dev/sda

4. Hängen Sie die Verzeichnisse aus, wenn die Installation erfolgreich abgeschlossen ist.

sudo umount /mnt/sys &&
sudo umount /mnt/proc &&
sudo umount /mnt/dev/pts &&
sudo umount /mnt/dev &&
sudo umount /mnt

Ubuntu
  1. So verwenden Sie BusyBox unter Linux

  2. Wie ich Cron unter Linux verwende

  3. Wie starte ich Arch Linux mit Initramfs in Ubuntus Grub?

  4. Wie erhalte ich Informationen zur aktuellen Grub-/Boot-Konfiguration?

  5. So schützen Sie den Grub-Bootloader unter Linux mit einem Kennwort

Reparieren Sie Linux-Startfehler im GRUB 2-Rettungsmodus

So verwenden Sie Ubuntu GRUB Bootloader Recovery, um Systemprobleme zu beheben

So verwenden Sie den cd-Befehl unter Linux

So verwenden Sie einen Dateibefehl unter Linux

So verwenden Sie den LDD-Befehl unter Linux

Lösung:Fehler:Keine solche Partitions-Grub-Rettung in Ubuntu Linux