Ubuntu perdeu a rede após a atualização do kernel

Como resolvi problemas de rede no Ubuntu

Conteúdo da página

Após instalar automaticamente um novo kernel, Ubuntu 24.04 perdeu a rede Ethernet. Este problema frustrante aconteceu comigo pela segunda vez, então estou documentando a solução aqui para ajudar outros que enfrentam o mesmo problema.

Comandos para Corrigir Problemas de Rede

Aqui estão os comandos que restauraram minha conectividade de rede. Primeiro, verifique a versão do kernel com uname -r (ele mostrará algo como 6.14.0-37-generic), em seguida, substitua o número da versão nos comandos abaixo:

# Verifique as interfaces de rede e os endereços IP
ifconfig

# Verifique a versão do kernel
uname -r

# Atualize as listas de pacotes e atualize o sistema
sudo apt update
sudo apt upgrade

# Instale os módulos extras do kernel para a versão encontrada acima
# Substitua 6.14.0-37-generic pela sua versão real do kernel
sudo apt install linux-modules-extra-6.14.0-37-generic

# Reconstrua o initramfs para incluir os novos módulos do kernel
sudo update-initramfs -u

# Instale os drivers proprietários recomendados (principalmente para gráficos NVIDIA)
sudo ubuntu-drivers autoinstall

# Reinicie para aplicar as alterações
sudo reboot

Entendendo o Problema e a Solução

Quando o Ubuntu atualiza automaticamente para uma nova versão do kernel (o que acontece durante as atualizações do sistema), às vezes os drivers de rede não são incluídos corretamente no sistema de arquivos de inicialização do novo kernel. Isso é particularmente comum com Ubuntu 24.04 após atualizações do kernel, especialmente em sistemas com hardware de rede específico que requer módulos adicionais do kernel.

Por Que Isso Acontece

  1. Módulos do kernel são específicos de versão: Cada versão do kernel requer seu próprio conjunto de módulos de driver.
  2. Initramfs pode estar incompleto: O sistema de arquivos RAM inicial (initramfs) carregado durante a inicialização pode não conter todos os drivers de rede necessários.
  3. Pacote de módulos extras ausente: O pacote linux-modules-extra para a nova versão do kernel pode não ter sido instalado automaticamente.

Como a Solução Funciona

Os comandos acima corrigem o problema ao:

  1. Instalar módulos extras do kernel: O pacote linux-modules-extra-<versão>-generic contém módulos adicionais do kernel, incluindo muitos drivers de rede que não estão incluídos no pacote do kernel base. Sem esses módulos, seu hardware de rede não será reconhecido.

  2. Reconstruir o initramfs: O comando update-initramfs -u garante que todos os módulos do kernel necessários (incluindo seus drivers de rede) sejam empacotados no initramfs. Isso é crítico porque o initramfs é carregado antes do sistema de arquivos raiz ser montado, e ele precisa conter drivers para hardware essencial, como interfaces de rede.

  3. Instalar drivers proprietários: O comando ubuntu-drivers autoinstall lida principalmente com drivers de vídeo (especialmente NVIDIA) e não resolve diretamente problemas de rede. No entanto, se seu sistema perdeu vários drivers durante a atualização do kernel, isso garante que todos os drivers proprietários sejam instalados corretamente.

  4. Reiniciar: Isso carrega o novo kernel com o initramfs configurado corretamente, restaurando a conectividade de rede.

Após o reinício, sua rede deve estar restaurada. Você pode verificar executando novamente ifconfig ou ip a para ver suas interfaces de rede com endereços IP atribuídos. Se precisar verificar a versão do Ubuntu para garantir a compatibilidade, há vários métodos disponíveis.

Se você estiver trabalhando com um servidor e precisar configurar as configurações de rede após restaurar a conectividade, talvez encontre útil nosso guia sobre como alterar um endereço IP estático no Ubuntu Server para configurações de rede adicionais.

Muito Legal Borat!