GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

Fehlerbehebung bei kdump-Problemen in CentOS/RHEL

Der kdump-Mechanismus ist ein Linux-Kernel-Feature, mit dem Sie Dumps erstellen können, wenn Ihr Kernel abstürzt. Es erstellt eine exakte Kopie des Speichers, die auf die Grundursache des Absturzes analysiert werden kann. Dies ist ein Skript, das kdump (Kernel-Dump) konfiguriert. Kdump erstellt ein Speicherabbild in einer Datei namens vmcore, wenn der Kernel ein kritisches Problem hat. Vmcore wird häufig benötigt, um das Problem zu untersuchen. Der Crash-Dump wird aus dem Kontext eines frisch gebooteten Kernels erfasst, nicht aus dem Kontext des abgestürzten Kernels. Kdump verwendet kexec, um in einen zweiten Kernel zu booten, wenn das System abstürzt. Kexec ist ein Schnellstartmechanismus, der es ermöglicht, einen neuen Linux-Kernel aus dem Kontext eines laufenden Kernels neu zu starten, ohne Firmware oder Warmstart durchlaufen zu müssen.

Dieser Beitrag erklärt die Schritte zur Behebung häufiger kdump-Probleme.

Überprüfen der kdump-Einrichtung

1. Überprüfen Sie, ob das Paket kexec-tools im System installiert ist.

# rpm -qa | grep kexec

2. Überprüfen Sie die Kernel-Kommandozeile im aktuell laufenden Kernel auf den Parameter „crashkernel“:

# cat /proc/cmdline

3. Überprüfen Sie, ob der Speicher für den Crashkernel reserviert ist, als der Kernel gestartet wurde:

# dmesg | grep Reserving

4. Überprüfen Sie den Pfad des Dumps:

# grep -v ^# /etc/kdump.conf

5. Überprüfen Sie den verfügbaren Speicherplatz auf dem Dateisystem, das im vorherigen Schritt im Pfadparameter angegeben wurde:

# df -h

6. Überprüfen Sie den Status des kdump-Dienstes:

# service kdump status         ### In CentOS/RHEL 6
# systemctl status kdump       ### In CentOS/RHEL 7

Wenn der kdump-Dienst nicht in Betrieb ist

1. Überprüfen Sie das kdump-Setup gemäß dem obigen Abschnitt.

2. Starten Sie den kdump-Dienst

# service kdump status        ### In CentOS/RHEL 6
# systemctl status kdump      ### In CentOS/RHEL 7

3. Prüfen Sie den Fehler vom Terminal aus.

4. Weitere Informationen zum Startfehler des Dienstes kdump finden Sie unter /var/log/messages .

Wenn das kdump-Setup in Ordnung ist und der kdump-Status des Dienstes betriebsbereit ist, aber beim Auslösen eines Absturzes kein vmcore generiert wird

1. Bearbeiten Sie die Datei /etc/kdump.conf und fügen Sie die folgende Zeile hinzu, um eine Shell zu erhalten, wenn die vmcore-Generierung fehlschlägt:

default shell

2. Überprüfen Sie in der Shell den verfügbaren Speicher, überprüfen Sie, ob das vmcore-Zieldateisystem gemountet ist, und versuchen Sie dann, den vmcore manuell zu kopieren, und finden Sie heraus, ob dies fehlschlägt.

# cp /proc/vmcore [destination]

Wenn eine Shell nicht abgerufen wird und der Crashkernel beim Hochfahren hängen bleibt

1. Überprüfen Sie die Meldungen auf der Konsole und suchen Sie nach Startmeldungen des Crashkernels. Suchen Sie nach, wo es klemmt.

Crashkernel ist derselbe Kernel, der gestartet wird, wenn das System hochfährt, und daher würde man Meldungen sehen, die den normalen Kernel-Bootup-Meldungen ähneln, aber mit begrenzten aktivierten Geräten. Beispiel:Im Crashkernel ist nur 1 CPU aktiviert. Nur die Zielspeicherfestplatte wird erkannt.

2. Wenn Sie Seitenzuweisungsfehlermeldungen sehen, ist die Wahrscheinlichkeit groß, dass der reservierte Crashkernel nicht ausreicht und Sie den Wert des Kernelparameters „crashkernel“ erhöhen müssen.


Cent OS
  1. CentOS / RHEL 7 :Grundlegendes zu Kexec und Kdump

  2. So ändern Sie Kernel-Semaphor-Limits in CentOS/RHEL

  3. „Kein Platz mehr auf dem Gerät“ – Problem bei der kdump-Generierung (CentOS/RHEL)

  4. CentOS / RHEL 6 :So konfigurieren Sie kdump

  5. CentOS / RHEL 7 :So konfigurieren Sie kdump

Überprüfen Sie die IP-Adresse von CentOS/RHEL

Gnome auf RHEL 8 / CentOS 8 installieren

Installieren Sie Python 2 auf RHEL 8 / CentOS 8

So aktivieren Sie Kdump auf RHEL 7 und CentOS 7

CentOS / RHEL 7 :So konfigurieren Sie kdump mit der GUI

„xfs_log_force:Fehler 5 zurückgegeben“ – XFS-Fehler (CentOS/RHEL 7)