Como posso remover um kernel da linha principal e voltar para um kernel suportado?

11

Atualizei recentemente para o kernel 3.4 no meu Ubuntu 12.04. Depois disso, o computador não está inicializando. Então, eu usei um kernel anterior para inicializar. Na verdade, eu não quero o kernel 3.4. Então, como posso removê-lo e usar o anterior?

Viswanath Kuchibhotla
fonte

Respostas:

8

Como você instalou? Se você apenas pegou um monte de arquivos deb e os instalou, livrar-se deles é tão simples quanto encontrar os pacotes e executá- apt-get removelos para cada um deles.

Acabei de tomar uma xícara de café para que você possa descobrir o peso total do meu bashfu esta manhã ... Isso deve lhe dizer quais kernels estão instalados:

dpkg -l | awk '/linux-[^ ]+-[0-9]/ {print $2}'

Passe por eles e observe as versões que você deseja destruir. Observe também sua instalação atual (uname -a) ou quaisquer novos kernels que você instalou desde a inicialização. Você não deseja remover os mais novos.

De qualquer forma, quando você tem uma ideia, pode removê-las em massa, adaptando este comando:

sudo apt-get purge linux-{headers,image,image-extra}-3.5.0-{7,8,9}.*

As palavras e os números entre parênteses serão expandidos no tempo de execução, para que os pacotes que realmente serão direcionados sejam:

linux-headers-3.5.0-7*
linux-headers-3.5.0-8*
linux-headers-3.5.0-9*
linux-image-3.5.0-7*
linux-image-3.5.0-8*
linux-image-3.5.0-9*
linux-image-extra-3.5.0-7*
linux-image-extra-3.5.0-8*
linux-image-extra-3.5.0-9*

Você pode mexer com isso, mas para a limpeza, acho isso muito mais seguro do que um curinga amplo (como eu atualmente em um kernel 3.5. *).

De qualquer forma, leia o que o apt-get fará antes de dizer sim. Remover os kernels atuais e todos os kernels é uma situação surpreendentemente comum em que os usuários do Ubuntu se encontram. Não é impossível de corrigir, mas sim, não faça isso!

Seja especialmente cuidadoso com curingas e apt-get. Se você não acredita em mim, corra apt-get -s remove linux-image-3.4*e veja o que ele seleciona (sim - todos os núcleos). Não se preocupe, pois o comando está no "modo de simulação" para que ele não faça nada (e, portanto, não precisa de raiz).

Oli
fonte
Quase quatro anos depois, seus avisos permanecem verdadeiros. Eu estava apenas preguiçoso, longe de ... um dia de dor de cabeça, quando li a confirmação um pouco mais de perto do que normalmente faria. Que fim!
Fissura rei
Você pode se recuperar disso, é apenas uma dor no fundo quando você não está esperando.
Oli
7

Desinstalando os Kernels da Linha Principal

Os kernels da linha principal têm seu próprio namespace ABI, para que sejam instalados lado a lado com os kernels padrão do Ubuntu (cada kernel possui um diretório separado, /lib/modules/VERSIONpor exemplo). Isso significa que você pode manter vários kernels da linha principal e do Ubuntu instalados ao mesmo tempo e selecionar o que você precisa no menu de inicialização do GRUB.

Se você deseja desinstalar um kernel da linha principal de qualquer maneira, primeiro use:

dpkg -l | grep "linux\-[a-z]*\-"

para encontrar o nome exato dos pacotes do kernel que você deseja desinstalar e, em seguida, faça:

sudo apt-get remove KERNEL_PACKAGES_TO_REMOVE

Lembre-se de que vários pacotes pertencem a uma versão do kernel: cabeçalhos comuns, cabeçalhos específicos da arquitetura e a imagem específica da arquitetura.

Fonte: https://wiki.ubuntu.com/Kernel/MainlineBuilds#Uninstalling_Mainline_Kernels

BuZZ-dEE
fonte