Estou no Ubuntu 20.04 e estou tentando entender o que está acontecendo com meus kernels Linux, e há algo que me parece estranho. O kernel atual deve ser:
@precision-3551:~$ uname -r
5.13.0-44-generic
Mas também posso ver que existem outros kernels instalados. Uma coisa curiosa é que os kernels instalados são 5.13
ou 5.4
, sem nada entre:
@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
E quando tento limpar, não recebo nenhum listado:
@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.
Eu também examinei /etc/apt/apt.conf.d/01autoremove-kernels
, conforme sugerido por esta resposta , mas esse arquivo não existe no meu caso. Acho que removendo os 5.4
kernels posso economizar um pouco de espaço. Como posso fazer isso ou há algum sinal de que não devo?
Vamos tomar um minuto e simplesmente reorganizar essa lista. Talvez agora faça mais sentido:
rc
kernels não são instalados e não ocupam espaço. Essas são simplesmente entradas no banco de dados do apt de kernels que o apt conhecia no passado. Ignoramos a maioria deles.Você tem um metapacote de kernel OEM e cabeçalhos. Os kernels OEM são destinados a hardware específico por um tempo limitado, até que o suporte de hardware para esse hardware chegue ao kernel principal. Se o seu hardware funcionar bem em seu kernel 5.13 atual, você não precisará mais desses pacotes de kernel OEM 5.0 e 5.4. Basta removê-los:
sudo apt remove linux-image-oem-osp1 linux-headers-5.0.0-1034-oem-osp1
. Ver? Essa foi fácil.Você tem a pilha de kernel 5.4 original que veio com o Ubuntu 20.04. Mas você não está usando (você está usando a série HWE 5.13). A menos que você planeje reverter para 5.4, você pode simplesmente remover esses cinco pacotes.
Você tem duas versões do seu kernel 5.13 atual, -44 e a -41 mais antiga. Isso é o que parece correto (você deve realmente ter dois). NÃO remova nenhum desses pacotes. Deixe o apt lidar com esta série automaticamente.
Parece que não há nada de errado com o apt. Na verdade, está excluindo automaticamente kernels mais antigos - é por isso que você tem tantos
rc
kernels listados. Você tem tantos kernels instalados porque você --o administrador humano-- não instruiu o apt a desinstalar esses metapacotes OEM e 5.4, e puxar kernels adicionais é o que esses metapacotes fazem!Seu kernel com o estado "rc" já está desinstalado, mas algumas configurações ainda podem estar lá. Se você quiser limpar a configuração, você pode fazer
sudo dpkg --purge <name of package>
, por exemplosudo dpkg --purge linux-image-5.4.0-86-generic
.