Linux Mint está desenvolvendo uma nova ferramenta para remover kernels antigos automaticamente, oferecendo mais controle e uma abordagem diferente da adotada pelo Fedora.
Eu preferia quando o Mint adotava uma abordagem mais para o kernel LTS do que agora, até o 6.18 foi pulado
.
Todas as principais distros estão fazendo isso … !
No caso do Fedora apenas deixa manter os últimos 2 ou 3 kernels antigos
O peppermint só mantém 1 kernel anterior
Nem todas…
No Fedora, o dnf já veio configurado para deixar só 3 Kernels. – Quando aparece mais um, ele deleta o mais antigo. – Existe um arquivo de configuração onde se pode alterar esse número.
No openSUSE, também nunca vi acúmulo de Kernels antigos. – Não lembro agora os detalhes.
No PCLinuxOS, acabo de verificar que o dnf não está eliminando. – Tenho exatamente 7 Kernels lá.
No Debian, MX Linux, Kubuntu, Mint, KDE Neon, eu preciso / precisava sempre remover manualmente os mais antigos, para não acumular.
No Void, há um comando “vkpurge”, que elimina os mais antigos, e mantém (acho que) 2 Kernels.
No Arch, não existe acúmulo – porque ele nunca muda o nome / número do Kernel. – Se é “linux-lts”, segue sendo “linux-lts”, e nem precisa atualizar o Grub. – Já vi o Grub do Arch ficar 2 anos sem alteração.
O Manjaro, sim, “numera” o Kernel. – Aliás, estava olhando meu histórico de capturas de tela, e percebi que o Manjaro é o maior criador de casos! – É o campeão, entre as distros que já instalei.
No Debian 13, não sei se tem essa configuração. Geralmente eu removo os antigos após a atualização. Não sei se mantê-lo lá por algum tempo o sistema apaga depois.
Eu até acho benéfico as distros deixarem apenas os 2 ou 3 kernels mais recentes !
Porque, noutros tempos quando não era assim no menu do grub no boot era uma bagunça com tantos kernels, agora ficou bem mais clean (ou limpo).
Isso depende da configuração:
Eu prefiro quando o Grub “esconde” os Kernels antigos em “Opções Avançadas”:
- Distro 1
- Opções Avançadas da Distro 1 (Kernels anteriores)
- Distro 2
- Opções Avançadas da Distro 2 (Kernels anteriores)
Não sei por que, algumas distros vêm com o Grub exibindo todos os Kernels na tela principal.
ah @frc_kde ,
Desconhecia essa configuração no Grub para os kernels antigos aparecer nas opções avançadas
Pelos vistos basta mexer na configuração do grub2
nano /etc/default/grub
e acrescentar ou alterar as seguintes linhas
GRUB_HIDDEN_TIMEOUT=10
GRUB_HIDDEN_TIMEOUT_QUIET=false
Acho que a configuração de “submenus” – “opções avançadas” – é isto:
GRUB_DISABLE_SUBMENU=y
Com “y”, desabilita os submenus – e os Kernels aparecem todos na página principal, poluindo muito.
Para não desabilitar, deve-se usar a opção “n” – ou, apenas não adicionar essa linha.
Não lembro qual é o padrão de fábrica – caso não exista essa linha no arquivo – porque faz séculos que não mexo com isso.
Acho que o padrão é criar “submenus” e esconder neles os Kernels anteriores, bem como o Modo de Recuperação (Recovery Mode) – porque não vejo esta linha no meu arquivo de configuração. – Ela deve existir, só quando a distro ou o usuário prefere entulhar a página principal com mil opções misturadas.
Boa tarde @frc_kde ,
Desconhecia essa opção do grub !
No Peppermint bookworm 12 por ele mesmo sempre removia o kernel antigo a cada atualização mas no Peppermint Trixie 13 as coisas mudaram, com o backports junto ele não faz mais a atualização de forma automática.
Eu teria que instalar no terminal de forma MANUAL pra depois o “sudo xDaily” remover o antigo de forma automática.
Ele sempre deixa um como backup em caso de emergência.
Gerenciamento de Kernel é diferente do gerenciamento dos demais pacotes.
Em geral, “atualização” significa “substituir uma versão antiga por outra mais nova”.
No caso do Kernel, o anterior não é substituído. – Instala-se um novo, porém o anterior é mantido. – Quando existe remoção automática, é de “outro mais antigo”, e não do “anterior”.
Quem me chamou atenção para essas sutilezas foi o dnf do PCLinuxOS. – No Fedora, o dnf veio configurado para manter 3 Kernels – mas no PCLinuxOS, o dnf nunca remove nenhum Kernel. – Eu preciso removê-los manualmente.
Fui pesquisar o porquê, e encontrei essa observação de que o gerenciamento de Kernel é diferente do de outros pacotes. – Faz todo sentido.
Além disso, também existem “sub-diferenças”, digamos assim.
Uma coisa, é “atualizar” de 7.2.10 para 7.2.11 – e outra coisa, é “atualizar” de 6.8.115 para 7.2.11 (*) – o que seria, digamos, um “salto”.
(*) Estou chutando números aleatórios.
Em algumas distros, o gerenciador simplesmente não atualiza Kernel – a menos que você instale um pacote chamado “kernel-latest”. – Não é “Kernel”. É só um pacote “comum”, desses que o gerenciador de pacotes vai substituindo, a cada nova versão. A função dele é ser “dependente”. Isso força a instalação de uma nova versão do Kernel, como “dependência” do pacote “kernel-latest”, ao ser atualizado.
À medida em que o “kernel-latest” vai sendo atualizado, versões anteriores do Kernel ficam “órfãos” – e podem ser removidos por algum mecanismo.
Outra coisa, é a remoção. – No Void, o comando vkpurge remove versões antigas, deixando só a “atual” (nova) e a “anterior”. – Se eu tiver 7.2.1 e 7.2.2 e 7.2.3, o vkpurge removerá o 7.2.1 – mas não removerá um 6.8.115, caso exista.
Na verdade, a numeração no Void é diferente – mas um exemplo poderá mostrar seu conceito de “séries”:
# xbps-query --regex -Rs '^linux[0-9.]+-[0-9._]+'
[-] linux4.14-4.14.295_1 Linux kernel and modules (4.14 series)
[-] linux4.19-4.19.262_1 Linux kernel and modules (4.19 series)
[-] linux4.4-4.4.261_1 Linux kernel and modules (4.4 series)
[-] linux4.9-4.9.330_1 Linux kernel and modules (4.9 series)
[-] linux5.10-5.10.151_1 Linux kernel and modules (5.10 series)
[-] linux5.11-5.11.22_1 Linux kernel and modules (5.11 series)
[-] linux5.12-5.12.19_1 Linux kernel and modules (5.12 series)
[-] linux5.13-5.13.19_1 Linux kernel and modules (5.13 series)
[-] linux5.14-5.14.21_1 Linux kernel and modules (5.14 series)
[*] linux5.15-5.15.76_1 Linux kernel and modules (5.15 series)
[-] linux5.16-5.16.20_1 Linux kernel and modules (5.16 series)
[*] linux5.18-5.18.19_1 Linux kernel and modules (5.18 series)
[*] linux5.19-5.19.17_1 Linux kernel and modules (5.19 series)
[-] linux5.4-5.4.220_1 Linux kernel and modules (5.4 series)
[-] linux5.5-5.5.18_1 Linux kernel and modules (5.5 series)
[-] linux5.6-5.6.19_1 Linux kernel and modules (5.6 series)
[-] linux5.7-5.7.19_1 Linux kernel and modules (5.7 series)
[-] linux5.8-5.8.18_1 Linux kernel and modules (5.8 series)
[-] linux5.9-5.9.16_1 Linux kernel and modules (5.9 series)
[-] linux6.0-6.0.6_1 Linux kernel and modules (6.0 series)
# xbps-remove linux5.15
# xbps-remove linux5.18
Ou seja, eu preciso remover a “série 5.15”, e a “série 5.18” – pois o vkpurge só remove o “excesso” de cada “série” – mas não remove uma “série”, só por ter “numeração menor”.
Esse amontoado de “sutilezas” é demais, para um pobre “gerenciador de pacotes” – feito para lidar com os outros 60 mil “pacotes comuns”.
Daí, a importância do “Gerenciador de Kernels” do Linux Mint – que não existia no Kubuntu (até o ano passado, acho). – Uma enorme “mão-na-roda”, terrivelmente útil.
Quando a gente diz que o Mint é mais “amigável”, estamos falando de coisas assim:
Outras distros também têm algum “Gerenciador de Kernels” – acho que o Manjaro, e também o saudoso Sabayon (Gentoo), se não me engano, entre outras distros.
O MX Linux também tem algum recurso desse tipo – mas não lembro, pois não utilizo:
No Debian, no MX Linux, no Kubuntu, no KDE Neon, eu uso o Synaptic – e sempre que ele marca uma nova versão de Kernel para instalar, eu marco outra (mais antiga) para “remoção completa”. – Não é “automático”, mas também não dá tanto trabalho:





