SDB:Mehrere Kernelversionen behalten
Getestet mit openSUSE | Empfohlene Artikel | Verwandte Artikel | |||
|
Inhaltsverzeichnis
Standardeinstellung nach Installation eines neuen Kernels
Wenn man einen neuen Kernel mit YaST oder Zypper heruntergeladen und installiert hat, ist die Standardeinstellung einer openSUSE Installation den alten Kernel zu löschen, sobald der neue Kernel installiert wurde und bevor das System mit diesem neuen Kernel gestartet wurde.
Die Standardeinstellung mithilfe der Multiversion Kernel Funktion ändern
Seit openSUSE 12.1 ist eine neue umfassend konfigurierbare Funktion verfügbar, die sich Multiversion Kernel nennt und die in der Datei /etc/zypp/zypp.conf aktiviert und konfiguriert werden kann.
Durch die Aktivierung und die Konfiguration dieser Funktion kann die Standardeinstellung dahin gehend geändert werden, dass das System
- alte Kernel erst löscht nachdem es erfolgreich mit einem neuen Kernel gestartet wurde
- eine bestimmte Anzahl älterer Kernel als Ersatz auf dem System beläßt
- eine bestimmte Kernelversion behält
Nach einem, der Installation eines neuen Kernels folgenden Neustart, vergleicht ein Script die Liste der installierten Kernel mit den Einstellungen in der Datei /etc/zypp/zypp.conf und löscht diejenigen, die nicht länger benötigt werden.
Aktivierung der Multiversion Kernel Funktion
Melden Sie sich als Benutzer Root bei Ihrem System an, öffnen Sie die Datei /etc/zypp/zypp.conf mit einem Editor und suchen Sie nach den folgenden beiden Zeilen:
#multiversion = provides:multiversion(kernel)
und
#multiversion.kernels = latest,running
Mithilfe der ersten Zeile können Sie die Multiversion Kernel Funktion aktivieren und in der zweiten Zeile konfigurieren Sie, wie das System die verschiedenen Kernelversionen handhabt.
Entfernen Sie das #-Zeichen am Beginn beider Zeilen und speichern Sie die Datei anschließend.
Konfigurieren der Multiversion Kernel Funktion
In der Datei /etc/zypp/zypp.conf sind alle verfügbaren Konfigurationsoptionen der Multiversion Kernel Funktion gelistet:
## Comma separated list of kernel packages to keep installed in parallel, if the ## above multiversion variable is set. Packages can be specified as ## 2.6.32.12-0.7 - Exact version to keep ## latest - Keep kernel with the highest version number ## latest-N - Keep kernel with the Nth highest version number ## running - Keep the running kernel ## oldest - Keep kernel with the lowest version number (the GA kernel) ## oldest+N - Keep kernel with the Nth lowest version number ## ## Default: Do not delete any kernels if multiversion = provides:multiversion(kernel) is set
Ihre Verwendung wird nachfolgend detailliert erkläutert.
Einen alten Kernel erst nach einem Neustart löschen
Anwendungsbeispiel: Sie möchten sicherstellen, dass ein alter Kernel erst dann gelöscht wird, wenn Ihr System erfolgreich mit einem neuen Kernel gestartet wurde.
Konfiguration: Entfernen Sie das Kommentarzeichen (#) am Beginn der beiden Zeilen in der Datei /etc/zypp/zypp.conf wie in Schritt 3 weiter oben beschrieben. Diese Zeilen sehen nun so aus:
multiversion = provides:multiversion(kernel) multiversion.kernels = latest,running
Erläuterung: Die Parameter latest,running teilen Ihrem System mit, den neuesten ('latest') und den derzeit laufenden ('running') Kernel zu behalten, wenn sie sich voneinander unterscheiden.
Wenn Sie Ihr System - wie es normalerweise der Fall ist - mit einem gerade installierten Kernel neu starten und dieser Neustart erfolgreich ist, dann wird Ihr System angewiesen
- den neuesten ('latest') Kernel = Ihr gerade installierter Kernel
- den derzeit laufenden ('running') Kernel = ebenfalls Ihr gerade installierter Kernel
zu behalten.
Der neueste und der derzeit laufende Kernel unterscheiden sich nicht, sondern sie sind identisch und daher wird in diesem Fall der Vorgänger des neuen Kernels, also der alte Kernel, gelöscht.
Falls Sie stattdessen einen Neustart Ihres Systems mit dem alten Kernel durchführen, dann wird Ihr System angewiesen
- den neuesten ('latest') Kernel = Ihr gerade installierter Kernel
- den derzeit laufenden ('running') Kernel = Ihr alter Kernel
zu behalten.
In diesem Fall unterscheiden sich der neueste und der derzeit laufende Kernel voneinander. Daher werden beide Kernel behalten und es wird kein Kernel gelöscht.
Ältere Kernel als Ersatz behalten
Anwendungsbeispiel: You want to keep one or more older kernel versions to have one or more spare kernels. This is useful if you, for example want to install unstable kernels for testing reasons. In case something goes wrong with a new unstable kernel, e.g. your machine does not boot, you still have one or more previous kernel versions installed which are known to be good, that you can boot your machine of.
Konfiguration: Add and configure one or more latest-N parameters to the multiversion kernel line in /etc/zypp/zypp.conf. The example line below will always keep the last two previous kernel versions on your system:
multiversion.kernels = latest,latest-1,latest-2,running
Erläuterung: When you reboot your system after the installation of a new kernel, the system will keep
- the new and running kernel as configured with latest,running
- the previous kernel version to the new kernel as configured with latest-1
- the predecessor of the previous kernel version as configured with latest-2
and remove all older kernel versions.
To keep the numbers of kernel versions you want, simply add and configure another latest-N statement to the multiversion kernels line. If you would like to keep four additional kernel versions, for example, then the line would look like this:
multiversion.kernels = latest,latest-1,latest-2,latest-3.latest-4,running
which would leave you with five installed kernels: The new one and the four previous versions.
The opposite can be done when using the parameters oldest and oldest+N. A multiversion kernels line like this
multiversion.kernels = latest,oldest,oldest+1,running
would leave you with
- the latest and running kernel version as configured with latest,running
- the oldest kernel version as configured with oldest
- the successor of the oldest kernel version as configured with oldest+1
Eine bestimmte Kernelversion behalten
Anwendungsbeispiel: You make regular system updates and let YaST or Zypper install new kernel versions. But you are also compiling your own special kernel for various reasons and want to make sure, that the system will keep it.
Konfiguration: Add the version number of your self-compiled kernel to the multiversion kernels line in /etc/zypp/zypp.conf. If you name your kernel 3.1.0-46-<your_username>, for example, then the line should look like this:
multiversion.kernels = latest,3.1.0-46-<your_username>,running
Erläuterung: When you reboot your system after the installation of a new kernel, the system will keep
- the new and running kernel as configured with latest,running
- your self-compiled kernel as configured with 3.1.0-46-<your_username>
Alle Konfigurationsoptionen verwenden
Anwendungsbeispiel: You have a freshly installed system that you update frequently and you want to keep
- the kernel that came with the installation media and its successor
- the newest kernel and its predecessor
- your own, self-compiled kernel named 3.1.0-46-<your_username>
Konfiguration: Change the multiversion kernels line in /etc/zypp/zypp.conf to the following:
multiversion.kernels = latest,latest-1,oldest,oldest+1,3.1.0-46-<your_username>,running
Erläuterung: When you reboot your system after the installation of a new kernel, the system will keep
- the new and running kernel as configured with latest,running
- the predecessor of the new and running kernel as configured with latest-1
- your self-compiled kernel as configured with 3.1.0-46-<your_username>
- the kernel that came with the installation media as configured with oldest
- the successor of the kernel from the installation media as configured with oldest+1
See also
Related articles
External links
--Freigeist A 09:48, 25. Dez. 2011 (MST)