Você está fazendo duas perguntas: por que isso aconteceu e como corrigi-lo?
O que deve acontecer
Quando o gerenciador de pacotes instala um novo kernel, o script em /etc/kernel/postinst.d/apt-auto-removal marca o kernel anterior para exclusão na próxima vez que o gerenciador de pacotes for executado. funciona corretamente para a maioria dos usuários na maioria das vezes.
O roteiro é bastante conservador. Ele não elimina todos os kernels antigos, e erra no lado de deixar os kernels no lugar, erroneamente deletar seu kernel atual ou o kernel anterior (no caso de você precisar reverter). Ele não faz a varredura para ver todos os kernels que você instalou - apenas usa os números de versão dos kernels novos e atuais.
Por que isso não aconteceu
Poderia ter havido um bug no script, um problema de gerenciamento de pacotes diferente poderia ter impedido a marcação, várias ações do usuário poderiam ter indicado o pacote para ser instalado manualmente antes da exclusão. A causa exata é desconhecida e possivelmente incognoscível. É tudo uma tapeçaria rica.
Como corrigir isso
A correção é muito fácil. Você precisa de duas informações:
- O kernel atual (use o comando: uname -r)
- Os outros kernels instalados (use o comando: ls / boot)
Exemplo:
$ uname -r
3.11.0-15-generic
$ ls /boot
abi-3.11.0-14-generic initrd.img-3.11.0-14-generic
abi-3.11.0-15-generic initrd.img-3.11.0-15-generic
config-3.11.0-14-generic System.map-3.11.0-14-generic
config-3.11.0-15-generic System.map-3.11.0-15-generic
extlinux vmlinuz-3.11.0-14-generic
grub vmlinuz-3.11.0-15-generic
Ignore todos os arquivos nomes . Veja todos os números da versão . Você pode ver no exemplo que existem duas versões de kernel instaladas:
- 3.11.0-14-genérico (pode ser excluído)
- 3.11.0-15-generic (o kernel em execução - NÃO apague!)
Para que possamos excluir o kernel antigo:
sudo apt-get remove linux-image-3.11.0-14-generic
Quando um kernel é removido, o gerenciador de pacotes removerá automaticamente todos esses arquivos de / boot e atualizará o menu grub.