Kernel/Deinstallation

From Gentoo Wiki
< Kernel
Jump to:navigation Jump to:search
This page is a translated version of the page Kernel/Removal and the translation is 89% complete.

Dieser Artikel beschreibt die Entfernung von alten Kerneln.

Kernelquellen deinstallieren

Hat man einen neuen Kernel installiert und läuft dieser zufriedenstellend, so kann der alte Kernel entfernt werden. Um die alten Kernelquellen zu deinstallieren, bietet emerge die Option --depclean (Kurzform -c), um all alten und ungenutzten Versionen eines Paketes mit Slots zu deinstallieren, z.B. bei sys-kernel/gentoo-sources:

root #emerge --ask --depclean gentoo-sources:xx.yy.zzz

Man sollte sich vergewissern, dass der Befehl nicht die aktuell verwendeten Kernelquellen deinstalliert. (Siehe dazu auch den Kernel Upgrade-Artikel.)

Kernelquellen schützen

Wenn neuere Kernelquellen installiert wurden und, bevor man zu den neueren Quellen wechselt, emerge --depclean ausführt, so werden die momentanen Kernelqellen entfernt. Will man aber den jetzigen Kernelquellen bleiben, so will man die Deinstallation nicht, weil die Kernelquellen z.B. noch bei der Aktualisierung von externen Kernelmodulen benötigt werden. Es ist daher gute Praxis die jetzige Kernelversion zur world Datei explizit hinzuzufügen, damit sie vor --depclean Operation geschützt wird.

An example of a way to do this:

root #emerge --depclean --exclude=sys-kernel/gentoo-sources

This will leave all of your kernel source build directories alone during cleanup, which you can then clean up with tools like eclean-kernel, referenced below.

Kernelreste entfernen

eclean-kernel verwenden

app-admin/eclean-kernel ist ein einfaches Hilfsprogramm zum Säubern alter Kernel. Es entfernt sowohl die Kerneldateien als auch temporäre Verzeichnisse, wenn sie nicht mehr von den gewünschten Kerneln genutzt werden.

Siehe eclean-kernel --help nach der Installation für Anweisungen zur Verwendung:

user $eclean-kernel --help
usage: eclean-kernel [-h] [-V] [-A] [-l] [-p] [-b BOOTLOADER] [-L LAYOUT] [-r ROOT] [-a] [-d] [-n NUM] [-s SORT_ORDER]
                      [-D] [-M] [--no-bootloader-update] [--no-kernel-install] [-x EXCLUDE]
 
 Remove old kernel versions, keeping either N newest kernels (with -n) or only those which are referenced by a bootloader
 (with -a).
 
 optional arguments:
   -h, --help            show this help message and exit
   -V, --version         show program's version number and exit
 
 action control:
   -A, --ask             Ask before removing each kernel
   -l, --list-kernels    List kernel files and exit
   -p, --pretend         Print the list of kernels to be removed and exit
 
 system configuration:
   -b BOOTLOADER, --bootloader BOOTLOADER
                         Bootloader used (auto, lilo, grub2, grub, yaboot, symlinks)
   -L LAYOUT, --layout LAYOUT
                         Layout used (auto, blspec, std)
   -r ROOT, --root ROOT  Alternate filesystem root to use
 
 kernel selection:
   -a, --all             Remove all kernels unless used by bootloader
   -d, --destructive     Destructive mode: remove kernels even when referenced by bootloader
   -n NUM, --num NUM     Leave only newest NUM kernels (see also: --sort-order)
   -s SORT_ORDER, --sort-order SORT_ORDER
                         Kernel sort order (mtime, version); default: version
 
 misc options:
   -D, --debug           Enable debugging output
   -M, --no-mount        Disable (re-)mounting /boot if necessary
   --no-bootloader-update
                         Do not update bootloader configuration after removing kernels (if supported by the bootloader
   --no-kernel-install   Do not call kernel-install while removing kernels (if installed)
   -x EXCLUDE, --exclude EXCLUDE
                         Exclude kernel parts from being removed (comma-separated, supported parts: vmlinuz, systemmap,
                         config, initramfs, modules, build, misc, emptydir)

Um z.B. nur die drei neuesten Kernel zu behalten:

root #eclean-kernel -n 3

Manuelles Entfernen

Portage entfernt nur die Dateien, die es selber installiert hat. Dateien, die beim Kompilieren und Installation des Kernels erstellt wurde, verbleiben im System. Sie können jetzt aber auch entfernt werden.

  • Wenn ein Kernel im Kernelverzeichnis kompiliert worden ist, verbleiben dort die temporären Dateien auch nach der Deinstallation durch Portage:
root #rm -r /usr/src/linux-3.X.Y
  • Bei der Installation des Kernel werden die Module in ein Unterverzeichnis von /lib/modules/ kopiert:
root #rm -r /lib/modules/3.X.Y
  • Die alten Dateien in /boot können auch entfernt werden:
root #rm /boot/vmlinuz-3.X.Y
root #rm /boot/System.map-3.X.Y
root #rm /boot/config-3.X.Y
root #rm /boot/initramfs-X.Y.Z
  • Schließlich entfernt man alle alten Einträge aus der Konfigurationsdatei des Bootloaders.