Marco Burmeister
private Homepage
In openSUSE kann eingestellt sein, dass mehrere Linux Kernel vorgehalten werden. Aktiv ist davon nach dem Booten nur eine Version.
Es kann aber angegeben, dass mehrere alte Versionen vorgehalten werden sollen. Sollte der neue Kernel Probleme machen, so kann das System mit einer älteren Version gestartet und
erfolgreich genutzt werden.
Im Standard war das System bei mir schon so konfiguriert.
Ich bin Anfang 2023 aber auf ein Problem gestoßen, von dem ich dachte, dass ich das nicht mehr erleben werde. Der neue Kernel führte dazu, dass mein Linux sich ab einem
gewissem Grad nicht mehr weiter starten ließ und ich mit einem hängenden System dastand.
Der Kernel kernel-default-5.14.21-150400.24.49.3.x86_64
funktionierte bei mir leider nicht, weshalb ich wieder zurück auf den Vorgänger
kernel-default-5.14.21-150400.24.46.1.x86_64
wechseln musste. Das Vorgehen wird hier auch beschrieben werden.
Die Seite ist in die folgenden Bereiche eingeteilt:
Multi-Kernel Version Konfiguration
Um die Konfiguration des eigenen Systems zu prüfen, muss in der Konfigurationsdatei /etc/zypp/zypp.conf
nach zwei Einstellungen geschaut werden.
Im Normalfall sollte das bei openSUSE Leap im Default-Zustand aktiviert sein!
multiversion
gesucht werden.
Auf meinem System stand hier der folgenden Eintrag:
multiversion = provides:multiversion(kernel)
Mit dieser Einstellung wird grundsätzlich die Funktionalität Multi-Kernel bereitgestellt.
multiversion.kernels
entscheidend.
Die Möglichkeiten zur Konfiguration wird unten erklärt.
multiversion.kernels = latest,latest-1,running
Hinweis:
Für die Richtigkeit der Daten übernehme ich keine Gewähr!
Dieser Parameter definiert, welche Kernel Versionen und wie viele aufbewahrt werden.
Die Kernel, die nicht definiert sind, werden dann automatisiert vom System gelöscht.
Folgende Einstellungen sind möglich:
Einstellung | Bedeutung |
---|---|
latest | Der Kernel mit der höchsten Versionsnummer soll erhalten bleiben |
latest-N | Der Kernel mit der n-ten höchsten Versionsnummer soll erhalten bleiben |
running | Der aktuell laufende Kernel soll erhalten bleiben |
oldest | Der Kernel mit der niedrigsten Versionsnummer soll erhalten bleiben |
oldest+N | Der Kernel mit der n-ten niedrigsten Versionsnummer soll erhalten bleiben |
Beispiel:
Die folgende Zeile würde den laufenden Kernel, die höchste Versionsnummer und die 2 vorherigen Kernel-Versionen sowie die angegebene Kernel-Version aufbewahren.
multiversion.kernels = latest,latest-1,latest-2,5.14.21-150400.24.46-default,running
Hinweis:
Für die Richtigkeit der Daten übernehme ich keine Gewähr!
Bestimmte Kernel-Version löschen
Wie in der Einleitung angesprochen, hatte ich ein Problem mit einer bestimmten Kernel-Version. Der Vorgänger war noch vorhanden und mit diesem konnte ich wieder alles
erfolgreich starten.
Es stellt sich nun die Frage, wie ich sauber den defekten Kernel lösche, damit nur noch der funktionierende vorhanden ist und beim Booten genutzt wird.
Ich könnte dem Bootloader sagen, welchen Kernel er nehmen soll. Das ist aber kein schöner Weg.
Herausfinden der vorhandenen Kernel-Versionen auf dem System:
Hierfür kann der Befehl
rpm -qa |grep kernel-default
verwendet werden.
Löschen einer alten Kernel-Version:
Zum Löschen kann der Befehl zypper rm [kernel-name-version]
verwendet werden.
Haben wir die Liste der installierten Kernel abgerufen, muss der zu löschende Kernel diesem Befehl übergeben werden. Der Befehl löst auch Abhängigkeiten auf.
Beispiel für den Kernel kernel-default-5.14.21-150400.24.49.3.x86_64
:
zypper rm kernel-default-5.14.21-150400.24.49.3.x86_64
Hinweis:
Für den Inhalt von Internet-Seiten, auf die von dieser Seite verwiesen wird, übernehme ich keine Verantwortung!
Marco Burmeister, Copyright © 2023 - 2023
zuletzt geändert: 2023-11-19
URL: https://www.marco-burmeister.de/helferlein/de_linux_opensuse_kernel_zypp_multi.html
Impressum