Ich dachte, es gibt nur eine Möglichkeit, die Startparameter in GRUB2 zu ändern Eigentlich gab es zwei Muster. (Vielleicht gibt es noch mehr) Es ist eine große Sache, also werde ich versuchen, es zusammenzufassen.
Zunächst werde ich aus der Geschichte von GRUB schreiben.
In GRUB *** / boot / grub / grub.conf *** Ich habe es direkt mit dem Befehl vi bearbeitet und verwendet.
Das direkte Bearbeiten dieser Datei ist sehr gefährlich. Wenn Sie zusätzliche Leerzeichen einfügen oder Zeilenumbrüche löschen Dies allein verhindert den Start des Systems. (/ Boot ist ein heikler Teil, da es Dateien enthält, die sich auf das Booten beziehen.)
Deshalb, "Da sich die Einstellungsdatei unter / etc befindet, ändern wir / etc / default / grub mit dem Befehl vi etc." Und die Arbeitsweise wurde geändert.
Was jedoch beim Start tatsächlich verwendet wird, ist *** / etc / grub2 / grub.cfg ***. Wie in dieser Datei reflektieren Verwenden Sie den Befehl grub2-mkconfig.
# grub2-mkconfig -o /boot/grub2/grub.cfg
Wir werden mit CentOS 8.2.2004 überprüfen.
Erstellen Sie zunächst ein Backup von grub.cfg.
# cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.bk
Überprüfen Sie die Standardstartparameter.
# cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="resume=/dev/mapper/cl-swap rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
GRUB_ENABLE_BLSCFG=true
Versuchen Sie, "rhgb" und "quiet" aus dem GRUB_CMDLINE-Wert zu entfernen. Übrigens, wenn Sie diese beiden Zeichenfolgen löschen, Sie können das Startprotokoll beim Start des Betriebssystems anzeigen. (Standardmäßig wird die Anzeige des Startprotokolls unterdrückt.)
# vi /etc/default/grub
# cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
#GRUB_CMDLINE_LINUX="resume=/dev/mapper/cl-swap rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet"
GRUB_CMDLINE_LINUX="resume=/dev/mapper/cl-swap rd.lvm.lv=cl/root rd.lvm.lv=cl/swap"
GRUB_DISABLE_RECOVERY="true"
GRUB_ENABLE_BLSCFG=true
So wie es ist, wird es nicht in der Datei grub.cfg wiedergegeben.
# grep kernelopts /boot/grub2/grub.cfg
set default_kernelopts="root=/dev/mapper/cl-root ro resume=/dev/mapper/cl-swap rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet "
Reflektieren Sie in der Datei grub.cfg.
# grub2-mkconfig -o /boot/grub2/grub.cfg
# grep kernelopts /boot/grub2/grub.cfg
set default_kernelopts="root=/dev/mapper/cl-root ro resume=/dev/mapper/cl-swap rd.lvm.lv=cl/root rd.lvm.lv=cl/swap "
Es wurde sicher reflektiert.
Es ist endlich das Hauptthema. ~~ Ich wollte das schreiben ~~
So bearbeiten Sie / etc / default / grub Es kam in Linux-Zertifizierungsprüfungen wie LPIC und LinuC heraus.
Alternativ können Sie den Befehl *** grub2-editenv *** verwenden.
Jetzt ändern wir es mit dem Befehl grub2-editenv. Was ich tun möchte, ist das "rhgb" und "quiet" hinzuzufügen, die ich zuvor gelöscht habe.
Überprüfen Sie zunächst auf die gleiche Weise wie zuvor.
# grep kernelopts /boot/grub2/grub.cfg
set default_kernelopts="root=/dev/mapper/cl-root ro resume=/dev/mapper/cl-swap rd.lvm.lv=cl/root rd.lvm.lv=cl/swap "
Sie können dies auch mit grub2-editenv überprüfen.
# grub2-editenv list | grep kernelopts
kernelopts=root=/dev/mapper/cl-root ro resume=/dev/mapper/cl-swap rd.lvm.lv=cl/root
Boot-Parameterinformationen werden in / boot / grub2 / grubenv gespeichert.
# grep kernelopts /boot/grub2/grubenv
kernelopts=root=/dev/mapper/cl-root ro resume=/dev/mapper/cl-swap rd.lvm.lv=cl/root rd.lvm.lv=cl/swap
Ändern Sie die Startparameter.
# grub2-editenv - set "kernelopts=root=/dev/mapper/cl-root ro resume=/dev/mapper/cl-swap rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet"
Überprüfen Sie, ob Sie es ändern können.
# grub2-editenv list | grep kernel
kernelopts=root=/dev/mapper/cl-root ro resume=/dev/mapper/cl-swap rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet
Ich konnte es ändern! !!
In CentOS6 verwendet der Bootloader GRUB. Die Konfigurationsdatei lautet /etc/grub/grub.conf.
In CentOS7 oder höher wird GRUB2 als Bootloader verwendet. Die Konfigurationsdatei lautet /etc/grub2/grub.cfg.
In GRUB2 habe ich bestätigt, dass es zwei Möglichkeiten gibt, die Startparameter zu ändern.
Der erste So bearbeiten Sie / etc / default / grub und reflektieren es mit grub2-mkconfig
Der zweite ist So führen Sie grub2-editenv aus und ändern den Wert von Kernelopts Dies hatte die Funktion, dass grub2-mkconfig -o /boot/grub2/grub.cfg nicht ausgeführt wurde.