Deixar os kernels antigos instalados pode ser perigoso?

6

Eu tenho usado o Ubuntu há quase 2 anos e sempre encontro guias na internet sobre como desinstalar versões antigas do kernel. Mesmo aqui no Ask Ubuntu , há muitas perguntas nesse sentido.

Minha pergunta é: devo fazê-lo? Existem problemas ou pode ser perigoso deixar essas versões antigas instaladas? Existem vantagens?

Editar:

Apenas dois pontos para esclarecer a questão:

por James 23.11.2015 / 13:44

7 respostas

19

Você não precisa deixar os kernels antigos e não precisa removê-los.

Os velhos kernels apenas ocupam espaço no seu disco rígido. É isso aí. Você pode ter um ou dois kernels antigos instalados apenas no caso de você querer inicializar com um deles.

Os kernels antigos não afetam o sistema de trabalho de forma alguma.

Então, é 100% SEGURO deixar os kernels antigos instalados se essa for a questão. Eles não serão usados a menos que você inicie deliberadamente com um deles.

    
por Pilot6 23.11.2015 / 13:48
8

O único problema que você consegue mantendo todos os kernels antigos é o espaço. Toda imagem do kernel junto com os cabeçalhos leva cerca de 300 MB.

Eventualmente, isso pode preencher a partição e impossibilitar as atualizações de segurança.

Você sempre deseja manter pelo menos um kernel antigo para ter um substituto para o caso.

    
por user1721265 23.11.2015 / 14:51
2

Se você tem um Ubuntu normal configurado, e se você executa regularmente sudo apt-get autoremove , apt-get sugere a remoção de kernels mais antigos. Tudo o que você precisa fazer é responder "Sim"! O script que é responsável pela remoção de kernels antigos sempre garante que você tenha pelo menos um kernel de fallback disponível, caso o mais novo não seja adequado para você.

O script que mencionei acima deve ser encontrado aqui: /etc/kernel/postinst.d/apt-auto-removal . Para citar de lá:

# Author: Steve Langasek 
#
# Mark as not-for-autoremoval those kernel packages that are:
#  - the currently booted version
#  - the kernel version we've been called for
#  - the latest kernel version (determined using rules copied from the grub
#    package for deciding which kernel to boot)
#  - the second-latest kernel version, if the booted kernel version is
#    already the latest and this script is called for that same version,
#    to ensure a fallback remains available in the event the newly-installed
#    kernel at this ABI fails to boot
# In the common case, this results in exactly two kernels saved, but it can
# result in three kernels being saved.  It's better to err on the side of
# saving too many kernels than saving too few.
    
por DK Bose 23.11.2015 / 16:15
1

É possível , embora não muito plausível que deixar os kernels antigos instalados seja um risco de segurança.

Novas versões do kernel geralmente corrigem problemas de segurança. Quando você inicializa em um novo kernel, você deve estar protegido contra esses problemas de segurança.

Aqui está um cenário em que seria possível explorar isso:

  1. O atacante pode remover os kernels da sua partição de inicialização.
  2. O
  3. Attacker remove versões mais recentes do kernel, forçando o usuário a inicializar o kernel antigo, sem correção.
  4. O atacante faz o usuário inicializar o kernel antigo.
  5. Após a inicialização, o atacante usa a vulnerabilidade para obter acesso à máquina.

Isso é possível , embora não muito plausível : geralmente, se um invasor tiver acesso à sua máquina, você terá um dia ruim. Ele quase podia comprometer facilmente seu initramfs, mesmo com a criptografia de disco completa ativada, e instalar um keylogger ou algo pior.

    
por Naftuli Kay 23.11.2015 / 21:46
1

Sim, pode ser - se o console estiver acessível e o menu grub permitir escolher qual kernel inicializar (não editando opções, apenas escolhendo qual delas). Se isso for verdade, um usuário não privilegiado pode selecionar um kernel antigo (reiniciando a máquina se tiver permissão para fazer isso, puxando o plugue e reiniciando ou passando a estar no console ao inicializar) e continue a explorar um local erro de escalação de raiz corrigido no novo kernel (exemplo aleatório: CVE-2012-0056 ).

Quando novos kernels contendo atualizações de segurança são instalados, você deve remover os antigos ou garantir que eles não possam ser selecionados para inicialização por um usuário mal-intencionado.

    
por Andrew Medico 24.11.2015 / 05:04
1

Eu não vejo nenhum perigo em deixar velhos kernels no lugar - apenas tendo dito que você cuida de espaço suficiente sob / boot, também para necessidades futuras.
Mas eu tenho uma razão especial para manter sempre um kernel antigo , que não recebe mais patches: de fato acontece comigo, que o kernel ativo mais recente é consertado, e então este falha ao iniciar um serviço importante - é geralmente o suporte sem fio. Em seguida, reinicio meu kernel antigo e, em seguida, reinstalei o kernel mais recente com falha e tudo funciona novamente.
O kernel experiente traz apenas perigo marginal: eu o uso apenas para reparos curtos!

    
por prometheos 13.01.2016 / 13:58
0

Ter pelo menos um Kernel anterior pode ser positivo em caso de configurações ruins ou travamentos estranhos. O que acontece no Linux e como o sistema operacional não é OEM, não há sistema de recuperação, a menos que você o faça de antemão. Na mesma página, a falha ou a configuração incorreta pode ser tão ruim que não pode ser corrigido ao retroceder.

Você pode visitar usando snapshots BTRFS AskUbuntu

    
por userDepth 06.06.2016 / 07:16