GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Was tun bei einer Linux-Kernel-Panik?

Linux wird überall in der IT-Welt verwendet. Wahrscheinlich haben Sie heute Linux verwendet, auch wenn Sie es nicht bemerkt haben. Wenn Sie etwas über Linux gelernt haben, wissen Sie, dass es sich tatsächlich um einen Kernel handelt. Der Kernel ist die primäre Einheit des Linux-Betriebssystems (OS) und ist verantwortlich für die Kommunikation zwischen der Hardware eines Computers und seinen Prozessen.

In diesem Artikel erfahren Sie etwas über eine Situation im Zusammenhang mit dem Linux-Kernel:Die Kernel-Panic . Der Begriff selbst kann Sie machen Panik, aber wenn Sie das richtige Wissen haben, dann können Sie ruhig bleiben. Jeder Systemadministrator ist mindestens einmal in seiner Karriere mit diesem Problem konfrontiert, aber die Neuinstallation des Systems ist nicht die erste Lösung, an die Sie sich wenden sollten.

Was ist eine Kernel Panic?

Eine Kernel-Panik ist eines von mehreren Linux-Startproblemen. Grundsätzlich handelt es sich um eine Situation, in der der Kernel nicht richtig geladen werden kann und das System daher nicht booten kann. Während des Bootvorgangs wird der Kernel nicht direkt geladen. Stattdessen initramfs lädt in RAM, dann zeigt es auf den Kernel (vmlinuz ), und dann bootet das Betriebssystem. Wenn initramfs zu diesem Zeitpunkt aufgrund von kürzlich erfolgten Betriebssystem-Patches, -Updates oder aus anderen Gründen beschädigt oder gelöscht wird, droht eine Kernel-Panic.

Wenn wir uns näher mit dem Boot-Prozess befassen, stoßen wir auf das Linux-Henne/Ei-Problem.

[ Den Lesern gefiel auch: Terminals, Shells, Konsolen und Befehlszeilen ]

Wenn ein Linux-Systemstartvorgang nach dem Schritt Master Boot Record (MBR) gestartet wird, wird GRUB geladen. Der Kernel muss in den RAM geladen werden, um das Betriebssystem zu starten, aber der Kernel befindet sich auf der Festplatte (/boot/vmlinuz ), und die Festplatte ist noch nicht auf / gemountet . Ohne Mounten kann auf keine Dateien zugegriffen werden, nicht einmal auf den Kernel. Um dies zu umgehen, zuerst initramfs /initrd lädt direkt in den RAM und mountet /boot Partition im schreibgeschützten Modus. Als nächstes wird die Festplatte auf / gemountet partitionieren, und der Prozess wird fortgesetzt.

# ls -lrth /boot/

Dieser Prozess betont die Wichtigkeit von initramfs /initrd im Linux-Startvorgang.

Warum treten Kernel-Panics auf?

Kernel-Panics treten auf:

  1. Falls der initramfs Datei wird beschädigt.
  2. Falls initramfs wird für den angegebenen Kernel nicht richtig erstellt. Jede Kernel-Version hat ihr eigenes entsprechendes initramfs .
  3. Wenn der installierte Kernel nicht unterstützt oder nicht korrekt installiert wird.
  4. Wenn aktuelle Patches einige Fehler aufweisen.
  5. Falls ein Modul aus dem Internet oder einer anderen Quelle installiert wurde, aber die initrd Image wird nicht mit dem neusten installierten Modul erstellt.

Wie kann ich Fehler beheben?

Das erste, was Sie tun sollten, nachdem Sie einen Kernel-Panic-Fehler gesehen haben, ist, nicht in Panik zu geraten, denn jetzt kennen Sie die Bilddatei, die sich auf den Fehler bezieht.

Schritt 1 :Booten Sie das System normal mit Ihrer angegebenen Kernel-Version.

Dann sehen Sie möglicherweise diesen Fehler:

Drücken Sie Eingabe oder eine beliebige Taste, und dann sehen Sie Folgendes:

Dies ist Ihre Kernel-Panic-Situation.

Schritt 2 :Starten Sie Ihren Computer erneut und wählen Sie Rettung Eingabeaufforderung.

In RHEL 6 oder früheren Versionen haben wir diese Option nicht, aber in RHEL 7 und höher haben wir ein integriertes Rescue-Image.

Dieses Image bootet Ihr Betriebssystem normal.

Schritt 2.1 :Gehen Sie zu /boot und alle Dateien auflisten. Hier sehen Sie, dass es kein initramfs gibt Datei für Ihren Kernel, aber es gibt ein initramfs Akte zur Rettung mit der Sie Ihr System gebootet haben, und eine andere für kdump .

Das initramfs denn der Kernel fehlt.

Schritt 3 :Sie müssen ein neues initramfs erstellen Datei, die Ihrer Kernel-Version entspricht.

Schritt 3.1 :Überprüfen Sie zuerst Ihre Kernel-Version:

#uname -r

Schritt 3.2 :Als nächstes führen Sie dracut aus Befehl:

#dracut -f <initrd-image> <kernal-version>

3.3) Listen Sie /boot auf Verzeichnisinhalt erneut. Das initramfs Datei für den Kernel wird nun erstellt.

Schritt 4 :Wenn Sie jetzt normal booten, startet Ihr Computer ohne einen Kernel-Panic-Fehler.

Schritt 5 :Es kann eine Situation geben, die auftritt, wenn Sie Ihr System mit einem Rettungsabbild booten und ein neues initramfs erstellen Datei, in der Sie keine neue Datei erstellen konnten, weil sie bereits vorhanden war.

An dieser Stelle müssen wir ein initramfs erstellen image mit dem mkinitrd Befehl oder dracut Befehl.

Schritt 5.1 :Überprüfen Sie zuerst Ihre Kernel-Version mit uname -r Befehl.

Schritt 5.2 :Führen Sie mkinitrd aus Befehl mit dem --force Option und Ihre Kernel-Spezifikation:

#mkinitrd --force <initrd-Image> <Kernel-Version>

Ihr initramfs Datei wird durch diese kurzen Schritte neu generiert und Sie können Ihr Betriebssystem jetzt fehlerfrei starten.

[ Kostenloses E-Book:Verwalten Sie Ihre Linux-Umgebung für den Erfolg ]

Abschluss

Wenn Sie jetzt einen Kernel-Panic-Fehler sehen, werden Sie das definitiv nicht tun Panik, weil Sie wissen, warum dieser Fehler aufgetreten ist und wie Sie ihn beheben können. Dieser Artikel behandelt eines der häufigsten Probleme beim Booten von Linux:Kernel Panic. Es gibt so viele andere potenzielle Startprobleme, die unter Linux auftreten können, aber die Lösung dieser Probleme wird viel weniger zu einer Panik, wenn Sie sich etwas fortgeschritteneres Wissen über Ihr System aneignen.


Linux
  1. Was ist ein Linux-Benutzer?

  2. Was macht einen Kernel-Linux-Server grundlegend?

  3. Was ist die aktuelle Linux-Kernelquelle?

  4. Was genau sind Linux-Kernel-Header?

  5. Was ist ein verdorbener Kernel in Linux?

Dmesg-Befehl unter Linux

Sysctl-Befehl unter Linux

Was ist umask unter Linux?

Linux Kernel 5.9:Was ist neu und wie man aktualisiert

Was ist die Shell unter Linux?

Linux-Kernel vs. Mac-Kernel