Se você precisa ficar com uma versão específica do pacote do kernel, você precisará manter todos destes:
linux-generic
linux-image-generic
linux-headers-generic
linux-image-X.Y.Z-W-generic
linux-image-extra-X.Y.Z-W-generic
linux-headers-X.Y.Z-W-generic
para X, Y, Z e W adequados. Aqui, as versões reais dos pacotes seriam como X.Y.Z-W.V
( 4.4.0-21.37
, por exemplo). Aqui, XYZ é a versão do kernel base upstream, W é o número ABI e V é o número da compilação (veja o Wiki do Ubuntu ).
Se os meta-pacotes não forem mantidos e os reais forem:
- se W for atacado, os nomes dos pacotes reais serão alterados para a nova versão. Os meta-pacotes serão atualizados, instalando o novo kernel, uma vez que esta operação não envolve os pacotes
linux-{image,image-extra,headers}-X.Y.Z-W-generic
existentes. - se V for esbarrado e W não, os nomes dos pacotes permanecerem os mesmos, então o
linux-{image,image-extra,headers}-X.Y.Z-W-generic
existente impedirá que o upgrade seja retido. Consequentemente, os meta-pacotes também não são atualizados.
Se meta-pacotes forem mantidos e os verdadeiros não forem:
- se W for atacado, nenhum novo kernel será instalado, já que a mudança nas dependências dos meta-pacotes não terá efeito devido a ser mantida.
- se V ficar sobrecarregado e W não, novos pacotes do kernel serão instalados, mas eles manterão a compatibilidade ABI com o pacote antigo.
Você está segurando os pacotes reais e não os meta-pacotes. Na última imagem, você pode ver claramente que W aumentou de 21 para 22, e assim os nomes dos pacotes mudaram e os antigos não importam mais.