Como Reverter o Kernel no Linux

Linux vive e morre pelo kernel. Se você está familiarizado com o funcionamento do GNU/Linux, o Linux é o kernel. Tudo o que vem depois são apenas ferramentas que interagem com ele. Essas ferramentas permitem que você realize tarefas práticas, mas não fariam nada sem o kernel.
O kernel de um sistema operacional é meio como o seu sistema cardiovascular. Você tende a esquecê-lo até que algo dê errado. Isso não acontece com frequência, mas atualizações do kernel podem e dão errado. Quando o kernel atualizado não permite que você use seu computador, é hora de reverter.
Leia também: Como Construir e Instalar um Kernel Personalizado no Ubuntu
Inicializar em um Kernel Antigo
A boa notícia se você recentemente atualizou seu kernel é que esse processo quase nunca remove o kernel antigo. A única situação em que isso pode ocorrer é se você desinstalou imediatamente o kernel mais antigo, o que não é uma boa ideia.
Para inicializar em um kernel mais antigo, você precisará reiniciar seu computador. Quando o computador carregar o GRUB, pode ser necessário pressionar uma tecla para selecionar opções não padrão. Em alguns sistemas, os kernels mais antigos serão mostrados aqui, enquanto no Ubuntu, você precisará selecionar “Opções avançadas para Ubuntu” para encontrar kernels mais antigos.
Uma vez que você selecione o kernel mais antigo, você inicializará seu sistema. Tudo deve funcionar como antes. Se você ainda estiver tendo problemas, o kernel pode não ser a questão.
Leia também: 5 Dicas Úteis ao Compilar Seu Próprio Kernel Linux
Remover o Kernel Problemático
Se você inicializou em seu computador e tudo está funcionando como deveria, o kernel atualizado é provavelmente o problema. Você poderia tecnicamente fazer isso toda vez que inicializa seu computador, mas faz mais sentido remover o kernel problemático.

Você pode fazer isso usando as ferramentas de gerenciamento de pacotes da sua distribuição. Isso vai variar com base no sistema que você está usando. Você também precisará saber a versão do kernel que deseja remover. Isso pode ser encontrado durante a inicialização na tela do GRUB. Para Ubuntu e outras distribuições baseadas em apt, você pode usar um comando como o seguinte:
sudo apt remove linux-image-VERSION-generic linux-headers-VERSION-genericVocê precisará substituir VERSION acima pelo número exato da versão do kernel problemático que deseja remover. Se você apenas quiser segurá-los por um tempo, pode usar o seguinte comando:
sudo apt-mark hold linux-image-generic linux-headers-generic
Evitando Problemas Futuros
Uma das maneiras mais fáceis de evitar esse tipo de problema é evitar atualizar imediatamente. Isso lhe dará a chance de ver se surgem relatos de usuários tendo problemas com o kernel. Você deve ficar especialmente atento a usuários com hardware similar ao seu.
Se a estabilidade é essencial para você, você também pode optar por usar distribuições LTS. Estas atualizam com menos frequência, além das atualizações de segurança. Isso significa que você pode contar que estas são mais estáveis do que a média das distribuições.
Perguntas Frequentes
Reverter meu kernel vai quebrar alguma coisa?
Quando se trata de uma parte tão central do sistema operacional, isso é sempre uma possibilidade. Dito isso, se você somente atualizou, reverter para um kernel mais antigo não deve causar muitos problemas.
Drivers e outros softwares que interagem diretamente com o kernel podem ter erros. Se as versões mais antigas deste software foram removidas ou atualizadas, você pode precisar reverter isso também.
Posso saber se uma atualização do kernel vai funcionar no meu sistema?
Como mencionado acima, é sempre útil verificar os relatos dos usuários antes de realizar uma grande atualização. Certifique-se de olhar em fóruns de usuários baseados na distribuição Linux que você usa para ver se há usuários enfrentando problemas significativos. Se você observar um número significativo de usuários com problemas, pode ser melhor esperar até que eles sejam resolvidos antes de atualizar.
Como posso verificar os kernels instalados no meu sistema?
Existem vários comandos para ver quais kernels estão instalados, dependendo da distribuição Linux que você está usando. O seguinte funcionará na maioria das versões:
find /boot/vmlinuz*No Arch Linux e em distribuições baseadas em Arch, você pode usar o seguinte:
pacman -Q linuxNo Ubuntu, Debian e sistemas baseados em qualquer um deles, você pode usar o comando abaixo:
dpkg --list | grep linux-imageEm Red Hat, Fedora e outras distribuições semelhantes, você pode usar o comando abaixo:
rpm -qa kernelEsta não é uma lista exaustiva, mas cobre um bom número de distribuições. Se você usar outra distribuição, consulte a documentação.
Como posso saber qual kernel estou usando atualmente?
Você pode fazer isso com um comando simples. Abra um terminal e digite o seguinte comando.
uname -rVocê verá uma string com as informações da versão do kernel em execução. Vai parecer algo como:
Linux 5.11.0-41-genericUm Olhar sob o Capô
Enquanto reverter é a maneira mais fácil de lidar com problemas relacionados ao kernel, não é a única forma. O kernel não é a única parte do sistema que pode causar problemas na inicialização. Se o seu sistema não iniciar, pode ser incrivelmente frustrante.
Pesquisar na internet sobre seus problemas pode ser útil, mas ajuda se você entender o que está acontecendo sob o capô, por assim dizer. Para ter uma melhor ideia do que está acontecendo quando você inicia seu sistema, confira nosso guia para entender o processo de inicialização do Linux.