Kernel und Systemstabilität

Kernelmodul wurde für einen anderen Kernel gebaut

Die Version Magic eines Moduls muss zum laufenden Kernel-Build passen; Modulmetadaten vor Neubau oder Auswahl eines Starteintrags vergleichen.

Auf dieser Seite
  1. Symptome und Geltungsbereich
  2. Mögliche Ursachen
  3. Sicher prüfen
  4. Nächste Schritte nach Befund
  5. Quellen und Prüfung
  6. Verwandte Probleme

Symptome und Geltungsbereich

  • Ein Treiber lädt nicht und meldet invalid module format.
  • Das Kernel-Protokoll vergleicht version magic mit should be.

Betroffene Umgebung

Extern gebaute oder falsch paketierte Kernelmodule nach Kernel-Upgrade, eigenem Build oder kopierter Modulinstallation.

Erkennbare Meldungen (synthetische Beispiele)
example_module: version magic '6.10.0 SMP preempt mod_unload' should be '6.11.0 SMP preempt mod_unload'

Neu bauen oder passendes unterstütztes Kernel-/Modulpaar wählen; umgangene Prüfung stellt keine Kompatibilität her.

Mögliche Ursachen

Das sind mögliche Erklärungen, keine bestätigte Diagnose. Mehrere unabhängige Fehler können gleichzeitig vorliegen.

  • Das Modul kann für andere Kernel-Version oder Konfiguration gebaut sein.
  • Eine alte Initramfs oder falsch installiertes eigenes Modul kann alten Build wählen; gleiche Versionszeichenfolge allein erfasst nicht jeden Konfigurationsunterschied.

Sicher prüfen

Führe jeweils einen Befehl in der passenden Sitzung aus. Lies zuerst die Erklärung. Großgeschriebene Platzhalter brauchen deine Werte; Werkzeuge und Rechte unterscheiden sich je nach Distribution. Die Website zeigt Befehle an und führt sie niemals aus.

Prüfschritt 1

Laufende Kernel-Version statt neuestem installiertem Paketstand lesen.

uname -r

Ergebnis einordnen: Genau diese Version für Header und Modul-Installationsverzeichnisse verwenden. Die Installation eines neuen Kernels wechselt den laufenden Kernel nicht.

Prüfschritt 2

example_module durch den Namen des gescheiterten Moduls ersetzen. Dies liest installierte Modulmetadaten und lädt nicht.

modinfo -F vermagic example_module

Ergebnis einordnen: Version und Build-Schalter mit Ablehnungszeile des Kernels vergleichen. Ein Treffer hier kann bedeuten, dass eine andere alte Kopie aus der Initramfs geladen wurde.

Nächste Schritte nach Befund

Für gewählten unterstützten Kernel neu bauen

Zeigen Metadaten anderen Kernel, dessen exaktes unterstütztes Header-/Entwicklungspaket installieren und externes Modul über DKMS- oder Modulpaket-Verfahren der Distribution neu bauen. Abschluss vor Neustart prüfen.

Vorsicht: Kein --force-vermagic verwenden und unpassende Module nicht erzwingen; umgangene Prüfung kann Kernel-Speicher beschädigen.

Wiederherstellung / Rücknahme: Falls Neubau kein kompatibles Modul liefert, vorherigen unterstützten Kernel mit ursprünglichem Modulpaket starten.

Hat dir dieser Hinweis geholfen?

Hinweis teilen#

Veraltete frühe Modulkopie ersetzen

Ist Plattenmodul passend, bleibt der Fehler aber beim frühen Start, Initramfs des gewählten Kernels mit Paketmodul erneuern und Referenz des Starteintrags prüfen. .ko-Dateien nicht manuell zwischen Versionsverzeichnissen kopieren.

Vorsicht: Richtig eingehängtes /boot oder ESP prüfen und älteres Startabbild behalten. Signaturpflicht kann das neu gebaute Modul unabhängig ablehnen.

Wiederherstellung / Rücknahme: Bei fehlerhaftem erneuertem Eintrag vorheriges Startabbild oder Generation mit passendem Modulpaket wiederherstellen.

Hat dir dieser Hinweis geholfen?

Hinweis teilen#

Quellen und Prüfung

Diese Anleitung basiert auf Originalquellen von Projekten oder Distributionen und wurde am genannten Datum redaktionell geprüft. Das ist eine Quellenprüfung, kein Nachweis einer auf deiner Hardware reproduzierten Lösung. Log-Beispiele sind synthetische Testdaten. Versionsabhängige Details müssen zur installierten Ausgabe passen.