Manchmal können nicht alle Protokollmeldungen in /var/log/dmesg erfasst werden, nachdem das Linux-Betriebssystem/der Kernel gestartet wurde, da zu viele Blockgeräte an den Server angeschlossen sind. Dieser Beitrag zeigt neben der Konfiguration der seriellen Konsole eine weitere Möglichkeit, alle Boot-Log-Meldungen aufzuzeichnen.
Grundsätzlich Kernel-Parameter „log_buf_len “ kann so konfiguriert werden, dass die Größe des Kernel-Protokollpuffers erhöht wird,
Name :log_buf_len, Legt die Größe des Kernel-Protokollpuffers fest.
Zusammenfassung :log_buf_len=n [KMG]
Beschreibung :Legen Sie die Größe des internen Protokollpuffers des Kernels fest. n muss eine Zweierpotenz sein, ansonsten wird auf eine Zweierpotenz aufgerundet. Dieser Wert kann auch durch CONFIG_LOG_BUF_SHIFT geändert werden Kernel-Konfigurationswert.
Für CentOS/RHEL 5,6
Für CentOS/RHEL 5 und 6:„log_buf_len=8M “ kann an die Kernel-Zeile für den standardmäßigen Boot-Kernel-Eintrag in /boot/grub/grub.conf angehängt werden .
Wenn die aktuelle Kernel-Zeile beispielsweise lautet:
kernel /vmlinuz-2.6.32-696.el6.x86_64 ro root=/dev/mapper/vg_root-lv_root
Hängen Sie log_buf_len an diese Zeile an, um daraus Folgendes zu machen:
kernel /vmlinuz-2.6.32-696.el6.x86_64 ro root=/dev/mapper/vg_root-lv_root log_buf_len=8M
Starten Sie das System neu, damit die Änderungen wirksam werden.
# shutdown -r now
Vorübergehende Änderung
Sie können den log_buf_len-Wert auch vorübergehend ändern, während Sie das System booten. Befolgen Sie beim Booten des Systems die folgenden Schritte:
1. Drücken Sie erneut e, um die Kernel-Zeile zu bearbeiten.
2. Fügen Sie log_buf_len=8M am Ende der Kernel-Zeile hinzu, wie in den obigen Beispielen gezeigt.
3. Drücken Sie die Eingabetaste, um die Änderungen vorübergehend zu speichern.
4. Drücken Sie b, um mit dem bearbeiteten Boot-Eintrag zu booten.
Für CentOS/RHEL 7
Für CentOS/RHEL 7 kann dieselbe Einstellung an „GRUB_CMDLINE_LINUX“ angehängt werden “-Zeile in /etc/default/grub :
# cat /etc/default/grub GRUB_TIMEOUT=15 GRUB_HIDDEN_MENU_QUIET=false GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL="serial console" GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1" GRUB_CMDLINE_LINUX="console=tty0 log_buf_len=8M" GRUB_DISABLE_RECOVERY="true"
Erstellen Sie dann die grub.cfg, die beim Booten verwendet wird, mit dem folgenden Befehl neu:
# grub2-mkconfig -o /boot/grub2/grub.cfg
Verwenden Sie für EFI-basierte Systeme den folgenden Befehl:
# grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
Starten Sie das System neu
# shutdown -r now
Vorübergehende Änderung
Stoppen Sie beim Booten des Systems den Bootvorgang auf dem GRUB-Kernel-Auswahlbildschirm, indem Sie eine Pfeiltaste nach oben oder unten drücken.
1. Drücken Sie e, um den Boot-Eintrag zu bearbeiten.
2. Verwenden Sie die Aufwärts- und Abwärtspfeile, um die Kernel-Zeile mit der vmlinuz-Datei darauf auszuwählen.
3. Drücken Sie Ende, um den Cursor an das Ende dieser Zeile zu setzen.
4. Fügen Sie log_buf_len=8M am Ende der Kernel-Zeile hinzu, wie in den obigen Beispielen gezeigt.
5. Drücken Sie Strg+x, um mit dem bearbeiteten Boot-Eintrag zu booten.