Wi-Fi Não Funcionando no Linux? Aqui Está Como Corrigir

Um dos grandes desafios que os usuários tendem a enfrentar com o Linux é o Wi-Fi. Os drivers de Wi-Fi geralmente não estão incluídos no kernel e, como resultado, há muitos problemas para fazer módulos Wi-Fi que não sejam Intel funcionarem bem no Linux. Aqui, cobrimos o que acontece quando o Wi-Fi não está funcionando no Linux e como corrigi-lo.
Índice
- Problemas de Hardware vs. Software de Wi-Fi
- Instalar Drivers a partir do ISO do Ubuntu
- Problema Um: Dispositivo Não Detectado
- Problema Dois: Módulo do Driver Ausente
- Problema Três: DNS
- Problema Quatro: Sem Gerenciador de Rede
Dica: aprenda como você pode encontrar senhas Wi-Fi salvas no Linux.
Problemas de Hardware vs. Software de Wi-Fi
Um problema de conexão Wi-Fi pode ser um problema de hardware ou software. Problemas de hardware são relativamente fáceis de diagnosticar – tudo o que você precisa fazer é abrir o terminal e inserir o seguinte comando:
ping localhost
Esta é uma maneira simples de verificar se seu hardware físico está funcionando. localhost funciona como um endereço para verificar o circuito do seu NIC. Se isso não estiver funcionando, você pode precisar fazer algum trabalho no hardware, seja você mesmo ou alguém mais.
Se esse ping retornar sem problemas ou você nem sequer ver sua placa Wi-Fi, você provavelmente tem um problema de software.
Além disso, você também pode verificar se o seu sistema detecta uma interface de rede ativa executando ip addr. A maioria das distribuições rotula as placas wireless ativas atualmente como “wl” seguido pelos números de barramento e slot do dispositivo na placa-mãe do computador.
Por exemplo, um rótulo de “wlp0s1” significa que é uma interface de rede sem fio no barramento 0, slot 1.

Nota: Se você não consegue navegar na web, pode ser necessário desativar o IPv6 no seu computador Linux.
Instalar Drivers a partir do ISO do Ubuntu
Se sua distribuição não está detectando sua rede Wi-Fi de forma alguma, ou se você está recebendo erros, pode tentar instalar ou reinstalar os drivers de Wi-Fi a partir do arquivo ISO do Ubuntu. Primeiro, você precisa baixar o ISO do Ubuntu correspondente à sua versão do Ubuntu. (Presumivelmente, você precisará baixá-lo em um dispositivo diferente ou baixá-lo usando sua conexão Ethernet no Ubuntu.)
Abra um Terminal e insira a seguinte sequência de comandos para montar o ISO do Ubuntu em uma unidade virtual:
sudomkdir/media/cdrom
sudomount-o loop ~/Downloads/ubuntu-*.iso /media/cdromVá para “Atualizador de Software” no painel, e clique no botão Configurações no canto inferior esquerdo da janela.

Clique na aba Drivers Adicionais, depois selecione a opção Adaptador de Rede Sem Fio e clique em Aplicar Mudanças.
Problema Um: Dispositivo Não Detectado
Se o dispositivo wireless não for detectado pelo Ubuntu (ou qualquer distribuição, a esse respeito), abra uma sessão de terminal e digite o seguinte comando:
sudo lsusbEste comando imprimirá todos os dispositivos USB atualmente conectados à sua máquina. Procure qualquer linha que contenha “Adaptador Sem Fio” ou “RTL.”
sudo lsusb |grep"RTL"
Além de listar todos os adaptadores USB, você também pode investigar seu sistema para qualquer dispositivo wireless PCI. Para fazer isso, execute o seguinte comando:
sudolspciAssim como no comando lsusb, procure por linhas na saída do lspci que contenham o rótulo “Controlador de Rede” ou “Controlador de Ethernet”.

Encontre o módulo de driver exato que seu dispositivo wireless está usando atualmente executando o seguinte comando:
sudo lshw -C network |grep"driver"Destacar o valor da variável “driver” e copie-o para a sua área de transferência.

Problema Dois: Módulo do Driver Ausente
Seguindo os comandos lsusb e lspci bem-sucedidos, confirmando que sua distribuição Linux pode ver a placa wireless, você pode assumir que o firmware está funcionando, apenas que o sistema não tem ideia do que fazer com o dispositivo. É aqui que os drivers ou módulos são necessários.
Digite o seguinte comando e substitua “modulename” pelo conteúdo da sua área de transferência:
sudo modprobe modulenamePor exemplo, se seu driver wireless for “iwlwifi”, ficaria assim:
sudo modprobe iwlwifiDepois disso, execute sudo lsmod | grep "modulename" para ver se o kernel Linux carregou seu dispositivo Wi-Fi corretamente.

Carregar Módulo do Driver Automaticamente na Inicialização
É uma ocorrência rara, mas às vezes o módulo não persiste da inicialização. Nesse caso, você pode forçá-lo a carregar permanentemente. Entre o comando abaixo no terminal:
sudonano/etc/modulesAdicione o nome do seu módulo na parte inferior e salve o arquivo.

Reinicie a máquina para verificar se o kernel Linux carregou o dispositivo wireless corretamente.
Bom saber: aprenda como seu computador gerencia seu hardware instalando seu próprio kernel Linux personalizado no Ubuntu hoje.
Problema Três: DNS
É raro que o DNS seja um problema; no entanto, vale a pena investigar se você ainda tem problemas de conexão. No terminal, digite o seguinte comando para verificar o resolvedor DNS padrão do sistema:
nmcli device show INTERFACE-NAME |grep IP4.DNSPor padrão, isso será configurado para o endereço IP do seu roteador. Se não funcionar, pode ser necessário alterar “wlp0s1” para o que sua conexão wireless utiliza. O seguinte comando também pode ser usado para pegar a designação:
ip addr|grep": "Uma vez que você tenha essa informação, faça ping no endereço do resolvedor DNS. Se isso funcionar, você também pode enviar um ping para uma rede externa, como os resolvedores DNS do Google:
ping 8.8.8.8Se todos os dispositivos em sua rede estiverem dando erros de carregamento de página, então altere os resolvedores DNS em seu roteador para os servidores do Google ou da OpenNIC. Você terá que consultar o fabricante do seu roteador para saber como fazer isso, mas geralmente é feito acessando o console de administração do dispositivo. Você pode encontrar isso na maioria dos roteadores acessando “192.168.0.1” ou “192.168.254.254” em um navegador web.
Adicionando um Servidor DNS Personalizado no NetworkManager
Dito isso, você também pode alterar o resolvedor DNS com base em cada dispositivo. Para fazer isso no Ubuntu, clique no botão Menu de Controle no canto superior direito da área de trabalho e selecione o ícone de engrenagem.

Clique na categoria Wi-Fi, então procure a categoria Redes Visíveis.

Selecione o ícone de engrenagem na linha que contém o nome do seu ponto de acesso wireless.
Clique na aba IPv4 na barra superior da janela menor.

Vá à seção DNS, então desligue o interruptor Automático.

Digite “8.8.8.8,8.8.4.4” na caixa de texto de DNS e clique em Aplicar para confirmar as configurações.

Abra um novo terminal e execute o seguinte comando para remover quaisquer dados anteriores do resolvedor DNS:
resolvectl flush-cachesTeste se o seu sistema agora está usando suas novas configurações de resolvedor DNS executando o seguinte:
resolvectl status |grep"Current DNS Server"Verifique se as configurações de DNS atuais resolveram seu problema de rede carregando uma página em um navegador web.

Bom saber: aprenda mais sobre servidores de nomes e resolvedores DNS usando dig no Linux.
Problema Quatro: Sem Gerenciador de Rede
Vamos supor que você removeu o Gerenciador de Rede ou o desinstalou acidentalmente. Esta é uma situação realmente problemática: você não tem internet e não tem Gerenciador de Rede, mas há coisas que você pode fazer.
Supondo que o pacote ainda esteja em seu cache, você pode ir para o terminal e inserir:
# Debian/Ubuntu
sudo apt install network-manager
# Fedora
sudo dnf install NetworkManager
# Arch Linux
sudo pacman -Syu networkmanagerSe isso não funcionar, você pode forçar seu sistema a se conectar a um ponto de acesso wireless usando o wpa_supplicant. Esta é uma ferramenta de linha de comando que usa o driver do seu dispositivo wireless para se conectar a um ponto de acesso sem usar o Gerenciador de Rede.
Para começar, crie um arquivo de configuração para o wpa_supplicant usando seu editor de texto favorito:
sudonano/etc/wpa_supplicant.confCole o seguinte bloco de código dentro do arquivo de configuração, e substitua “SSID” e “PASSWORD” pelo nome do ponto de acesso e a senha do seu roteador:
network={
ssid="SSID"
password="PASSWORD"
}Salve o arquivo de configuração e cole a seguinte linha de código na sua sessão de terminal:
sudo wpa_supplicant -B-i INTERFACE-NAME -c/etc/wpa_supplicant.conf -D nl80211Substitua o valor da flag “-i” pelo nome da sua interface wireless.
Nota: este comando funcionará apenas em placas wireless mais novas. Se você estiver tentando conectar uma placa Wi-Fi mais antiga, substitua o valor da flag “-D” por “wext.”
Solicite um novo endereço IP ao seu roteador recarregando o daemon DHCP:
sudo dhclient INTERFACE-NAMETeste se a sua conexão Wi-Fi está funcionando agora fazendo ping em um site externo:
ping-c5 maketecheasier.comReinstale o Gerenciador de Rede para restaurar a capacidade total de Wi-Fi do seu sistema Linux:
sudo apt install network-managerReinicie sua máquina para carregar a nova instalação do Gerenciador de Rede.
Entender como módulos Wi-Fi e drivers de kernel funcionam é apenas o primeiro passo para aprender como o Linux funciona internamente. Explore mais o lado técnico deste sistema operacional criando um sistema de arquivos oculto com o Shufflecake.