Wenn es dir jemals passiert ist, flippen Sie nicht aus! Es ist wirklich sehr leicht zu lösen. Der GRUB 2 -Bootloader verfügt über spezielle Tools zum Scannen der auf Ihrem Computer installierten Festplatten für bootfähige Betriebssysteme, die auf Ihren Festplatten installiert sind.
In diesem Artikel werde ich Ihnen zeigen, wie Sie die oben genannten Probleme lösen und verwenden können grub2-mkconfig Werkzeug, um es zu lösen. Ich werde Debian 9 Stretch für die Demonstration verwenden, aber es sollte an einer modernen Linux -Verteilung mit installiertem GRUB 2 funktionieren. Lass uns anfangen.
grub2-mkconfig ist ein wirklich einfaches Werkzeug. Alles, was es tut, ist die Festplatten Ihres Computers nach installierten bootfähigen Betriebssystemen (einschließlich Fenster, Mac OS und beliebigen Linux -Verteilungen) und generiert eine GRUB -2 -Konfigurationsdatei. Das ist es.
Unterschied zwischen grub2-mkconfig und grub-mkconfig:
Obwohl GRUB 2 auf Ihrem Computer installiert ist, ist die grub2-mkconfig Der Befehl ist möglicherweise nicht in Ihrer bevorzugten Linux -Verteilung erhältlich. Aber die grub-mkconfig Der Befehl kann in Ihrer Linux -Verteilung verfügbar sein. Es gibt keinen Unterschied zwischen grub-mkconfig Und grub2-mkconfig Wenn Grub 2 installiert ist.
Beachten Sie, dass, wenn Sie Grub -Erbe installiert haben, dann grub-mkconfig Und grub2-mkconfig Befehle werden nicht gleich sein.
Sie können überprüfen, welche Version von Grub auf Ihrem Linux -Computer mit dem folgenden Befehl installiert ist:
$ sudo grub2-mkconfig-Verssion
Oder
$ sudo grub-mkconfig-Verssion
Wie Sie sehen können, auf meiner Debian 9 Stretch Machine grub 2.02 ist installiert. Ich habe auch nicht grub2-mkconfig Befehl in Debian 9 Stretch verfügbar. Es wird umbenannt in grub-mkconfig. So grub-mkconfig Und grub2-mkconfig ist in meinem Fall dasselbe.
Verwenden von grub2-mkconfig:
Der grub2-mkconfig oder der grub-mkconfig Der Befehl hat nur eine wichtige Option. Der -Ö oder lang formatieren die -Ausgang Möglichkeit. Es wird verwendet, um GRUB 2 zu sagen, wo die generierte GRUB -Konfigurationsdatei gespeichert werden soll.
Standardmäßig, grub2-mkconfig oder der grub-mkconfig Der Befehl druckt die generierte Konfigurationsdatei auf Stdout, Welches ist das Terminal Ihres Linux -Betriebssystems.
Wenn Sie dies wollen, dann laufen Sie grub2-mkconfig oder der grub-mkconfig Befehl wie folgt:
$ sudo grub2-mkconfig
Oder
$ sudo grub-mkconfig
Wie Sie sehen können, wird die generierte GRUB 2 -Konfiguration auf dem Terminalbildschirm gedruckt. Dies ist möglicherweise nicht sehr hilfreich.
Wenn Sie möchten, können Sie die generierte GRUB 2 -Konfiguration in eine Datei exportieren. Das Format des Befehls ist unten angegeben:
$ sudo grub2 -mkconfig -o file_path
Oder
$ sudo grub -mkconfig -o file_path
Wenn Sie das lange Format bevorzugen, dann
$ sudo grub2-mkconfig-output file_path
Oder
$ sudo grub-mkconfig-output file_path
NOTIZ: Hier, DATEIPFAD Ist der Pfad zur Datei, in der die generierte GRUB 2 -Konfiguration gespeichert werden soll.
Nehmen wir an, Sie möchten die generierte GRUB 2 -Konfiguration in einer Datei speichern roden.CFG in Ihrem Benutzer HEIM Verzeichnis.
Führen Sie dazu den folgenden Befehl aus:
$ sudo grub2 -mkconfig -o ~/grub.CFG
Oder
$ sudo grub -mkconfig -o ~/grub.CFG
Wie Sie sehen können, wird eine neue GRUB 2 -Konfigurationsdatei generiert.
Wie du sehen kannst, roden.CFG Die Datei wird auf meinem Benutzer generiert HEIM Verzeichnis.
Wie Sie sehen können, wurde der Inhalt des Erzeugten roden.CFG Die Datei ist die gleiche wie früher, als ich die Ausgabe im Terminal gedruckt habe.
Aktualisieren von GRUB 2 -Konfigurationsdatei (BIOS):
Wenn Sie alte BIOS -basierte Motherboards verwenden, sollte die GRUB 2 -Bootloader -Konfigurationsdatei in der /boot/grub/grub.CFG Datei wie Sie im Screenshot unten sehen können.
NOTIZ: Bei einigen Linux -Verteilungen wie CentOS 7 oder RHEL 7 finden Sie die GRUB 2 -Konfigurationsdatei unter /boot/grub2/grub.CFG. Wenn es für Sie der Fall ist, stellen Sie sicher, dass Sie den Pfad anpassen, bevor Sie das ausführen grub2-mkconfig oder grub-mkconfig Befehl im Artikel unten.
Um die GRUB 2 -Konfigurationsdatei auf der BIOS -basierten Linux -Installation zu aktualisieren, führen Sie den folgenden Befehl aus:
$ sudo grub2 -mkconfig -o/boot/grub/grub.CFG
Oder
$ sudo grub -mkconfig -o/boot/grub/grub.CFG
Die GRUB 2 -Konfigurationsdatei sollte aktualisiert werden.
Wenn Sie Änderungen erwarten, starten Sie Ihren Computer mit dem folgenden Befehl neu:
$ sudo Neustart
Sie sollten sehen, was Sie im GRUB -Menü erwarten, kurz nachdem Sie den Ein- / Ausschalter gedrückt haben.
Aktualisieren von GRUB 2 -Konfigurationsdatei (UEFI):
Auf UEFI -basierten Motherboards ist die Aktualisierung der GRUB 2 -Konfiguration etwas schwieriger.
Bei EFI -basierten Linux -Installationen befindet sich die GRUB 2 -Konfigurationsdatei im/boot/efi/efi/<Your_os>/roden.CFG
Hier, ist der Name des Verzeichnisses, in dem die roden.CFG befindet sich. Der Verzeichnisname unterscheidet sich für jede Linux -Verteilung. Der Trick besteht darin, den Namen des Verzeichnisses zu bestimmen, das zur Startzeit verwendet wird. Wenn Sie nicht mit unterschiedlicher Linux -Verteilung herumgespielt haben, ist die Wahrscheinlichkeit höher, dass es nur ein Verzeichnis gibt. Andernfalls gibt es viele Verzeichnisse, aus denen Sie den aktiven bestimmen müssen.
Führen Sie den folgenden Befehl aus, um alle verfügbaren Verzeichnisse in der Auflistung aufzulisten /Boot/EFI/EFI -Verzeichnis:
$ sudo ls/boot/efi/efi
Wie Sie sehen können, habe ich auf meiner CentOS 7 -Maschine nur ein Verzeichnis CentOS/
Um die GRUB 2 -Konfigurationsdatei zu aktualisieren, führen Sie den folgenden Befehl aus:
$ sudo grub2 -mkconfig -o/boot/efi/efi/centos/grub.CFG
Oder
$ sudo grub -mkconfig -o/boot/efi/efi/centos/grub.CFG
Die GRUB 2 -Konfigurationsdatei sollte aktualisiert werden.
Starten Sie nun Ihren Computer neu und Sie sollten Ihre erwarteten Einträge im GRUB -Menü sehen.
Angenommen, Sie haben den Kernel Ihrer Lieblings -Linux -Verteilung aktualisiert. Nach der Installation haben Sie die Version Ihres Kernels überprüft und sind überrascht, dass sie nicht aktualisiert wurde! Ach nein!
Nun, ärgern Sie sich nicht. Der grub2-mkconfig oder der grub-mkconfig Der Befehl kann auch das scannen /Stiefel Verzeichnis, um nach installierten Linux -Kerneln zu suchen und für jede von ihnen einen GRUB 2 -Starteintrag zu generieren.
Die Befehle und die Prozesse sind die gleichen wie in der angegeben Aktualisieren von GRUB 2 -Konfigurationsdatei (BIOS) Und Aktualisieren von GRUB 2 -Konfigurationsdatei (UEFI) Abschnitte dieses Artikels oben.
So benutzt du also grub2-mkconfig oder grub-mkconfig Befehl zur Lösung vieler Startprobleme unter Linux. Danke, dass du diesen Artikel gelesen hast.