In Ubuntu (und ich denke auch in Debian) gibt es ein System-Skript mit dem Namen, update-grub
das automatisch grub-mkconfig -o
mit dem richtigen Pfad für die Grub-Konfigurationsdatei ausgeführt wird.
Gibt es einen ähnlichen Befehl für Red Hat-basierte Distributionen?
Wenn nicht, woher weiß das System, wo sich die zu aktualisierende Grub-Konfigurationsdatei befindet, wenn eine neue Kernelversion installiert wird?
/bin/kernel-install
stattdessen. Bitte bearbeiten Sie Ihre Antwort, um diese Informationen als zukünftige Referenz aufzunehmenNach der Analyse der Skripte in Fedora stelle ich fest, dass der Pfad der Konfigurationsdatei aus dem Symlink gelesen wird
/etc/grub2.conf
. Die richtigegrub2-mkconfig
Zeile lautet also:Wie in den Kommentaren erwähnt, könnte es sein
/etc/grub2.cfg
, oder/etc/grub2-efi.cfg
auf einem UEFI - System. Tatsächlich können beide Links gleichzeitig vorhanden sein und auf unterschiedliche Stellen verweisen . Das-e
Flag toreadlink
wird fehlschlagen, wenn die Zieldatei nicht vorhanden ist, aber auf meinem System beide vorhanden sind ... Überprüfen Sie Ihre Befehle, denke ich.quelle
/etc/grub2.cfg
sudo grub2-mkconfig -o "$(readlink /etc/grub2-efi.cfg)"
Auf Fedora verwende ich:
da die Ausführung ohne Option
readlink
einen relativen Pfad zurückgibt undgrub2-mkconfig
einen Fehler ausgibt:Ich verwende die
-e
Option, damit die Ausgabe auf stdout angezeigt wird, wenn der Symlink nicht in eine vorhandene Datei aufgelöst wird, damit ich weiß, dass ein Fehler aufgetreten ist.Von der Manpage für Readlink:
quelle
In Fedora verweist der Symlink /etc/grub2.cfg auf die BIOS-Version. Verwenden Sie auf einem UEFI-System:
In CentOS:
Im Allgemeinen können Sie stattdessen Folgendes verwenden:
Siehe https://docs.fedoraproject.org/f27/system-administrators-guide/kernel-module-driver-configuration/Working_with_the_GRUB_2_Boot_Loader.html#sec-Editing_a_Menu_Entry
quelle
editiere die grub Datei mit
vi
odervim
, speichere die Änderungen und schließe den Editor mit: wq!Folgendes müssen Sie ausführen, um grub in RedHat oder CentOS zu aktualisieren:
quelle
Das
update-grub
Skript in Ubuntu ist eigentlich nur ein Stummelgrub-mkconfig
und kann ohne allzu große Schmerzen an andere Distributionen angepasst werden. Hier ist es in seiner Gesamtheit:Diese effektiv tut , was in dem empfohlene CentOS Wiki , und in anderen Antworten hier - der einzige Unterschied ist , dass Sie ändern müssen ,
grub
umgrub2
in dem Befehl und der Ausgangspfad.quelle