Como excluir um kernel que não funciona após a atualização?

15

Eu tenho. uma pergunta simples. Depois de atualizar meu kernel, não conseguia inicializar (preso na tela roxa) a menos que eu escolhesse o kernel antigo. Então, como eu excluo o novo kernel com synaptic. E como faço isso com segurança? Estou no Quetzel Quantal. Meu kernel é 3.5.0-40. O kernel de trabalho é 3.5.0-39. Além disso, como faço para impedir que as atualizações do kernel apareçam no gerenciador de atualizações? Obrigado.

Dave
fonte
qual é a versão do kernel? você quer remover?
precisa saber é o seguinte
Meu kernel é 3.5.0-40
Dave
1
Se você preferir que as respostas incluam informações sobre como impedir que o novo kernel seja instalado novamente com suas outras atualizações , convém incluir isso na sua pergunta.
Eliah Kagan 9/09/13
Eu acho que não é aconselhável excluir o kernel ou interromper as atualizações, pois geralmente são atualizações de segurança. Veja esta pergunta sobre uma melhor prática.
27615 jarno

Respostas:

28

Para remover com segurança o kernel indesejado, abra uma sessão do terminal e execute o comando:

Encontre o nome do pacote do kernel

dpkg -l | grep linux-image

No momento da redação deste artigo, na amd64/x86_64 arquitetura o nome da imagem era:linux-image-$(uname -r)-generic

Para imagens de kernel não assinadas, como as criadas pelos drivers da nvidia, a imagem pode ser: linux-image-unsigned-4.20.17-042017-generic

Remover (remover - remover todos os arquivos de configuração também)

sudo apt-get purge linux-image-3.5.0-40-generic

NOTA: Para o Ubuntu 18.04 LTS ou mais tarde, você também pode querer para remover qualquer linux-modulese linux-headerspacotes da mesma versão para salvar espaços de disco / o manter sistema enxuto.

Terry Wang
fonte
Ah, não preciso fazer o sudo update-grub depois disso?
Dave
O script postrm do pacote atualizará grub para você quando você remove (purga)-lo ;-)
Terry Wang
Obrigado Terry que resolveu o meu problema. Agora, como faço para manter as atualizações do kernel fora do gerenciador de atualizações?
Dave
sudo apt-get update && apt-get dist-upgrade -y, não tenho certeza se você possui linux-current-genericou linux-image-generic-lts-raringnão versões LTS.
Terry Wang
2
sudo apt-get remove linux-image-3.5.0-40*.

Sugerirei que você sempre mantenha pelo menos um kernel antigo disponível, caso precise inicializá-lo por motivos que você nunca esperaria agora.

construtor
fonte
Acho que é sobre manter os grãos. Coisas muito importantes. Eu tenho um outro além deste. Ty, eu vou tentar amanhã e postar de volta.
Dave
0

Nenhuma outra resposta sobre esta questão parece correta. A resposta completa é uma mistura de ambos com alguma correção adicional;

sudo apt-get purge *4.18.0-21*

Onde 4.18.0-21está o número do seu kernel, use ls /bootpara vê-lo.

Foi isso que fez por mim (apesar de ter que executar um comando semelhante duas vezes para se livrar /lib/modules/4.18.0-21-generic).

Use este comando com cuidado para garantir que você não exclua nada necessário.

Como uma observação interessante, no meu caso também linux-headers-generic-hwe-18.04foi removida e, quando tentei reinstalá-lo, ele quis instalar o kernel mais recente novamente, por isso não o fez. E, na verdade, a pesquisa provou que fazia parte do kernel 4.18.0-21; https://packages.ubuntu.com/bionic-updates/linux-headers-generic-hwe-18.04

Roel Van de Paar
fonte