Kernel/Rimozione
Questo articolo descrive la rimozione dei vecchi kernel.
Rimozione dei sorgenti del kernel
Dopo aver installato un nuovo kernel funzionante, il kernel vecchio può essere rimosso. Per rimuovere dei vecchi sorgenti kernel, possiamo usare il comando emerge --depclean (oppure in forma breve "-c") esso viene usato per rimuovere tutte le vecchie o inutilizzate versioni di un pacchetto specifico, ad esempio per sys-kernel/gentoo-sources.
root #
emerge --ask --depclean gentoo-sources:xx.yy.zzz
Bisogna però assicurarsi di non rimuovere i sorgenti del kernel attualmente in esecuzione (controllare kernel upgrade l'articolo su come aggiornare il kernel)
Proteggere i sorgenti kernel
Se i nuovi sorgenti kernel sono stati scaricati con emerge e si utilizza "--depclean" prima di passare alla nuova versione, i sorgenti del kernel attuale verranno rimossi.Ma se si vuole rimanere con i sorgenti kernel attuali,non si desidera ovviamente rimuoverli, perché ad esempio i sorgenti in uso potrebbero essere necessari per aggiornare moduli esterni.È quindi buona norma passare al comando "--depclean" la versione specifica del kernel da rimuovere.
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.
Rimozione dei kernel residui
Utilizzare eclean-kernel
app-admin/eclean-kernel è un semplice tool per la pulizia/rimozione dei vecchi kernel.Esso rimuove sia i file del kernel sia le cartelle dove è stato compilato, ovviamente solo se esse non si riferiscono a kernel preservati.
See eclean-kernel --help post-installation for usage instructions:
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)
Ad esempio, per far rimanere solo tre nuovi kernel nel sistema:
root #
eclean-kernel -n 3
Rimozione manuale
Portage tuttavia rimuove solo i file del kernel installati, i file del generati durante la compilazione e l'installazione del kernel rimangono intatti.Essi possono essere rimossi tranquillamente.
- Quando il kernel viene compilato direttamente nella cartella dei sorgenti, i file generati durante il processo di compilazione rimangono intatti e non vengono rimossi da Portage:
root #
rm -r /usr/src/linux-3.X.Y
- Durante la configurazione del kernel, i moduli del kernel sono copiati nella sotto-directory /lib/modules/:
root #
rm -r /lib/modules/3.X.Y
- I vecchi file in /boot possono anche essere rimossi:
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
- Infine, rimuovere tutte le voci relative rimaste nel file di configurazione del bootloader