apt --purge autoremove no puede encontrar núcleos más antiguos

apt --purge autoremove no puede encontrar núcleos más antiguos

Estoy en Ubuntu 20.04 y estoy tratando de entender qué está pasando con mis kernels de Linux, y hay algo que me parece extraño. El kernel actual debería ser:

@precision-3551:~$ uname -r
5.13.0-44-generic

Pero también puedo ver que hay otros kernels instalados. Una cosa curiosa es que los kernels instalados son 5.13o 5.4, sin nada intermedio:

@precision-3551:~$ dpkg --list | egrep -i --color 'linux-image|linux-headers'
ii  linux-headers-5.0.0-1034-oem-osp1          5.0.0-1034.39                       amd64        Linux kernel headers for version 5.0.0 on 64 bit x86 SMP
ii  linux-headers-5.13.0-41-generic            5.13.0-41.46~20.04.1                amd64        Linux kernel headers for version 5.13.0 on 64 bit x86 SMP
ii  linux-headers-5.13.0-44-generic            5.13.0-44.49~20.04.1                amd64        Linux kernel headers for version 5.13.0 on 64 bit x86 SMP
ii  linux-headers-5.4.0-113                    5.4.0-113.127                       all          Header files related to Linux kernel version 5.4.0
ii  linux-headers-5.4.0-113-generic            5.4.0-113.127                       amd64        Linux kernel headers for version 5.4.0 on 64 bit x86 SMP
ii  linux-headers-generic                      5.4.0.113.117                       amd64        Generic Linux kernel headers
ii  linux-headers-generic-hwe-20.04            5.13.0.44.49~20.04.28               amd64        Generic Linux kernel headers
rc  linux-image-5.0.0-1034-oem-osp1            5.0.0-1034.39                       amd64        Signed kernel image oem-osp1
ii  linux-image-5.13.0-41-generic              5.13.0-41.46~20.04.1                amd64        Signed kernel image generic
ii  linux-image-5.13.0-44-generic              5.13.0-44.49~20.04.1                amd64        Signed kernel image generic
rc  linux-image-5.4.0-100-generic              5.4.0-100.113                       amd64        Signed kernel image generic
rc  linux-image-5.4.0-104-generic              5.4.0-104.118                       amd64        Signed kernel image generic
rc  linux-image-5.4.0-105-generic              5.4.0-105.119                       amd64        Signed kernel image generic
rc  linux-image-5.4.0-107-generic              5.4.0-107.121                       amd64        Signed kernel image generic
rc  linux-image-5.4.0-109-generic              5.4.0-109.123                       amd64        Signed kernel image generic
rc  linux-image-5.4.0-110-generic              5.4.0-110.124                       amd64        Signed kernel image generic
ii  linux-image-5.4.0-113-generic              5.4.0-113.127                       amd64        Signed kernel image generic
rc  linux-image-5.4.0-65-generic               5.4.0-65.73~18.04.1                 amd64        Signed kernel image generic
rc  linux-image-5.4.0-66-generic               5.4.0-66.74~18.04.2                 amd64        Signed kernel image generic
rc  linux-image-5.4.0-70-generic               5.4.0-70.78~18.04.1                 amd64        Signed kernel image generic
rc  linux-image-5.4.0-71-generic               5.4.0-71.79~18.04.1                 amd64        Signed kernel image generic
rc  linux-image-5.4.0-72-generic               5.4.0-72.80~18.04.1                 amd64        Signed kernel image generic
rc  linux-image-5.4.0-73-generic               5.4.0-73.82~18.04.1                 amd64        Signed kernel image generic
rc  linux-image-5.4.0-74-generic               5.4.0-74.83~18.04.1                 amd64        Signed kernel image generic
rc  linux-image-5.4.0-77-generic               5.4.0-77.86~18.04.1                 amd64        Signed kernel image generic
rc  linux-image-5.4.0-80-generic               5.4.0-80.90~18.04.1                 amd64        Signed kernel image generic
rc  linux-image-5.4.0-81-generic               5.4.0-81.91~18.04.1                 amd64        Signed kernel image generic
rc  linux-image-5.4.0-84-generic               5.4.0-84.94~18.04.1                 amd64        Signed kernel image generic
rc  linux-image-5.4.0-86-generic               5.4.0-86.97~18.04.1                 amd64        Signed kernel image generic
rc  linux-image-5.4.0-87-generic               5.4.0-87.98~18.04.1                 amd64        Signed kernel image generic
rc  linux-image-5.4.0-89-generic               5.4.0-89.100~18.04.1                amd64        Signed kernel image generic
rc  linux-image-5.4.0-90-generic               5.4.0-90.101                        amd64        Signed kernel image generic
rc  linux-image-5.4.0-91-generic               5.4.0-91.102                        amd64        Signed kernel image generic
rc  linux-image-5.4.0-92-generic               5.4.0-92.103                        amd64        Signed kernel image generic
rc  linux-image-5.4.0-94-generic               5.4.0-94.106                        amd64        Signed kernel image generic
rc  linux-image-5.4.0-96-generic               5.4.0-96.109                        amd64        Signed kernel image generic
rc  linux-image-5.4.0-97-generic               5.4.0-97.110                        amd64        Signed kernel image generic
rc  linux-image-5.4.0-99-generic               5.4.0-99.112                        amd64        Signed kernel image generic
ii  linux-image-generic                        5.4.0.113.117                       amd64        Generic Linux kernel image
ii  linux-image-generic-hwe-20.04              5.13.0.44.49~20.04.28               amd64        Generic Linux kernel image
ii  linux-image-oem-osp1                       5.4.0.113.117                       amd64        Depends on the generic kernel image (dummy transitional package)
@precision-3551:~$ dpkg --list | grep -i -E --color 'linux-image|linux-kernel' | grep '^ii'
ii  linux-image-5.13.0-41-generic              5.13.0-41.46~20.04.1                amd64        Signed kernel image generic
ii  linux-image-5.13.0-44-generic              5.13.0-44.49~20.04.1                amd64        Signed kernel image generic
ii  linux-image-5.4.0-113-generic              5.4.0-113.127                       amd64        Signed kernel image generic
ii  linux-image-generic                        5.4.0.113.117                       amd64        Generic Linux kernel image
ii  linux-image-generic-hwe-20.04              5.13.0.44.49~20.04.28               amd64        Generic Linux kernel image
ii  linux-image-oem-osp1 

Y cuando intento purgar, no aparece ninguno en la lista:

@precision-3551:~$ sudo apt --purge autoremove
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

También he investigado /etc/apt/apt.conf.d/01autoremove-kernels, como lo sugiereesta respuesta, pero ese archivo no existe en mi caso. Creo que quitando los 5.4kernels puedo ahorrar un poco de espacio. ¿Cómo puedo hacer eso o hay alguna señal de que no debería hacerlo?

Respuesta1

Tomémonos un minuto y simplemente reorganicemos esa lista. Quizás ahora tenga más sentido:

// OEM Kernel packages
ii  linux-image-oem-osp1                       5.4.0.113.117                       amd64        Depends on the generic kernel image (dummy transitional package)
ii  linux-headers-5.0.0-1034-oem-osp1          5.0.0-1034.39                       amd64        Linux kernel headers for version 5.0.0 on 64 bit x86 SMP
rc  linux-image-5.0.0-1034-oem-osp1            5.0.0-1034.39                       amd64        Signed kernel image oem-osp1

// Original 20.04 kernel 5.4 packages
ii  linux-image-generic                        5.4.0.113.117                       amd64        Generic Linux kernel image
ii  linux-image-5.4.0-113-generic              5.4.0-113.127                       amd64        Signed kernel image generic
ii  linux-headers-generic                      5.4.0.113.117                       amd64        Generic Linux kernel headers
ii  linux-headers-5.4.0-113                    5.4.0-113.127                       all          Header files related to Linux kernel version 5.4.0
ii  linux-headers-5.4.0-113-generic            5.4.0-113.127                       amd64        Linux kernel headers for version 5.4.0 on 64 bit x86 SMP

// Hardware Enablement (HWE) 20.04 kernel 5.13 packages
ii  linux-image-generic-hwe-20.04              5.13.0.44.49~20.04.28               amd64        Generic Linux kernel image
ii  linux-image-5.13.0-41-generic              5.13.0-41.46~20.04.1                amd64        Signed kernel image generic
ii  linux-image-5.13.0-44-generic              5.13.0-44.49~20.04.1                amd64        Signed kernel image generic
ii  linux-headers-generic-hwe-20.04            5.13.0.44.49~20.04.28               amd64        Generic Linux kernel headers
ii  linux-headers-5.13.0-41-generic            5.13.0-41.46~20.04.1                amd64        Linux kernel headers for version 5.13.0 on 64 bit x86 SMP
ii  linux-headers-5.13.0-44-generic            5.13.0-44.49~20.04.1                amd64        Linux kernel headers for version 5.13.0 on 64 bit x86 SMP
  • rcLos kernels no están instalados y no ocupan espacio. Esas son simplemente entradas en la base de datos de kernels de apt que apt conocía en el pasado. Ignoramos a la mayoría de ellos.

  • Tiene un metapaquete y encabezados del kernel OEM. Los kernels OEM están destinados a hardware específico por un tiempo limitado, hasta que el soporte de hardware para ese hardware llegue al kernel principal. Si su hardware funciona bien en su kernel 5.13 actual, entonces ya no necesita esos paquetes de kernel OEM 5.0 y 5.4. Simplemente basta con eliminarlos: sudo apt remove linux-image-oem-osp1 linux-headers-5.0.0-1034-oem-osp1. ¿Ver? Eso fue fácil.

  • Tiene la pila del kernel 5.4 original que vino con Ubuntu 20.04. Pero no lo estás usando (estás usando la serie HWE 5.13). A menos que planee volver a 5.4, simplemente puede eliminar esos cinco paquetes.

  • Tiene dos versiones de su kernel 5.13 actual, -44 y la anterior -41. Así es como se ve lo correcto (de hecho, deberías tener dos). NO elimine ninguno de esos paquetes. Deje que apt maneje esta serie automáticamente.

  • Parece que no hay nada de malo en apt. De hecho, está eliminando automáticamente los núcleos más antiguos; es por eso que tiene tantos rcnúcleos en la lista. Tiene tantos kernels instalados porque usted, el administrador humano, no le indicó a Apt que desinstalara esos metapaquetes OEM y 5.4, y¡Incorporar núcleos adicionales es lo que hacen esos metapaquetes!

Respuesta2

Su kernel con estado "rc" ya está desinstalado, pero es posible que aún quede alguna configuración. Si deseas limpiar la configuración, puedes hacerlo sudo dpkg --purge <name of package>, por ejemplo sudo dpkg --purge linux-image-5.4.0-86-generic.

información relacionada