Como se conectar ao WiFi a partir do terminal no Ubuntu Linux

8 de setembro de 2020

Neste tutorial, você aprenderá como se conectar à rede sem fio a partir do terminal no Ubuntu. Isso é particularmente útil se você estiver usando um servidor Ubuntu onde não tem acesso ao ambiente de desktop normal.

Eu uso principalmente o Linux desktop em meus computadores pessoais. Eu também tenho vários servidores Linux para hospedar sites relacionados e software de código aberto como Nextcloud, Discourse, Ghost, Rocket Chat etc.

Eu uso o Linode para implementar rapidamente servidores Linux na nuvem em minutos. Mas recentemente, instalei o servidor Ubuntu no meu Raspberry Pi. Esta é a primeira vez que instalei um servidor em um dispositivo físico e tive que fazer coisas extras para conectar o servidor Ubuntu ao WiFi via linha de comando.

Neste tutorial, mostrarei as etapas para se conectar ao WiFi usando um terminal no Ubuntu Linux. Você deve

  • saber o nome do ponto de acesso wi-fi (SSID) e a senha
  • não ter medo de usar o terminal para editar arquivos

Conecte-se ao WiFi a partir do terminal no Ubuntu

Conectar ao terminal Wi-Fi no Ubuntu

É fácil quando você está usando a área de trabalho do Ubuntu porque você tem a GUI para fazer isso facilmente. Não é a mesma coisa quando você está usando o servidor Ubuntu e está restrito à linha de comando.

Ubuntu usa o utilitário Netplan para configurar facilmente a rede. No Netplan, você cria um arquivo YAML com a descrição da interface de rede e com a ajuda da ferramenta de linha de comando netplan, você gera todas as configurações necessárias.

Vamos ver como se conectar à rede sem fio do terminal usando o Netplan.

Etapa 1: Identifique o nome da interface de sua rede sem fio

Existem várias maneiras de identificar o nome da sua interface de rede. Você pode usar o comando ip, o antigo comando ipconfig ou verificar este arquivo:

Comandos para usar no terminal

ls /sys/class/net

Isso deve fornecer a você todas as interfaces de rede disponíveis (Ethernet, wi-fi e loopback). O nome da interface de rede sem fio começa com 'w' e geralmente é denominado semelhante a wlanX, wlpxyz.

Anote o nome desta interface. Você o usará na próxima etapa.

Etapa 2: Edite o arquivo de configuração do Netplan com os detalhes da interface wi-fi

O arquivo de configuração do Netplan reside no diretório /etc/netplan. Se você verificar o conteúdo deste diretório, deverá ver arquivos como 01-network-manager-all.yml ou 50-cloud-init.yaml.

Se for o servidor Ubuntu, você deve ter o arquivo cloud-init. Para desktops, deve ser um arquivo gerenciador de rede.

O Network Manager na área de trabalho do Linux permite que você escolha uma rede sem fio. Você pode codificar o ponto de acesso wi-fi em sua configuração. Isso pode ajudá-lo em alguns casos (como quando suspende o computador) em que a conexão cai automaticamente.

Qualquer que seja o arquivo, abra-o para edição. Espero que você esteja um pouco familiarizado com o editor Nano porque o Ubuntu vem pré-instalado com ele.

Comandos para usar no terminal

sudo nano /etc/netplan/50-cloud-init.yaml

Arquivos YAML são muito sensíveis em relação a espaços, recuo e alinhamento. Não use tabulações, use 4 espaços (ou 2, o que já for usado no arquivo YAML) no lugar onde você vê um recuo.

Basicamente, você terá que adicionar as seguintes linhas com o nome do ponto de acesso (SSID) e sua senha (geralmente) entre aspas:

        wlan0:
            dhcp4: true
            opcional: true
            access-points:
                "SSID \ _name":
                    password: "WiFi \ _password"

Novamente, mantenha o alinhamento como eu mostrei ou então o arquivo YAML não será analisado e irá retornar um erro.

Seu arquivo de configuração completo pode ter a seguinte aparência:

# to it will not persist across an instance reboot. To disable cloud-init's
# network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
    ethernets:
        eth0:
            dhcp4: true
            optional: true
    version: 2
    wifis:
        wlan0:
            dhcp4: true
            optional: true
            access-points:
                "SSID_name":
                    password: "WiFi_password"

De qualquer forma, gere a configuração usando este comando:

Comandos para usar no terminal

sudo netplan generate

E agora aplique isto:

Comandos para usar no terminal

sudo netplan apply

Se você tiver sorte, você deve ter uma rede conectada. Tente fazer ping em um site ou execute o comando apt update.

No entanto, as coisas podem não correr tão bem e você pode ver alguns erros. Tente algumas etapas extras, se for o caso.

Possível solução de problemas

É possível que, ao usar o comando netplan apply, você veja um erro na saída que se parece com isto:

Traceback (most recent call last):
  File "/usr/sbin/netplan", line 23, in <module>
    netplan.main()
  File "/usr/share/netplan/netplan/cli/core.py", line 50, in main
    self.run_command()
  File "/usr/share/netplan/netplan/cli/utils.py", line 179, in run_command
    self.func()
  File "/usr/share/netplan/netplan/cli/commands/apply.py", line 46, in run
    self.run_command()
  File "/usr/share/netplan/netplan/cli/utils.py", line 179, in run_command
    self.func()
  File "/usr/share/netplan/netplan/cli/commands/apply.py", line 173, in command_apply
    utils.systemctl_networkd('start', sync=sync, extra_services=netplan_wpa)
  File "/usr/share/netplan/netplan/cli/utils.py", line 86, in systemctl_networkd
    subprocess.check_call(command)
  File "/usr/lib/python3.8/subprocess.py", line 364, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['systemctl', 'start', '--no-block', 'systemd-networkd.service', 'netplan-wpa-wlan0.service']' returned non-zero exit status 5.

É possível que o serviço wpa_supplicant não está sendo executado. Execute este comando:

Comandos para usar no terminal

sudo systemctl start wpa_supplicant

Execute netplan apply mais uma vez. Se isso resolver o problema, muito bem. Caso contrário, desligue seu sistema Ubuntu usando:

Comandos para usar no terminal

shutdown now

Inicie o sistema Ubuntu novamente, faça login, gere e aplique o netplan novamente:

Comandos para usar no terminal

sudo netplan generate

sudo netplan apply

Agra pode aparecer um aviso (em vez de erro). É um aviso e não um erro. Eu verifiquei os serviços do systemd em execução e descobri que o netplan-wpa-wlan0.service já estava em execução. Provavelmente ele mostrou o aviso porque já estava em execução e netplan apply atualizou o arquivo de configuração (mesmo sem nenhuma alteração).

Warning: The unit file, source configuration file or drop-ins of netplan-wpa-wlan0.service changed on disk. Run 'systemctl daemon-reload' to reload units.

Espero que você tenha conseguido se conectar ao wi-fi usando a linha de comando no Ubuntu com a ajuda deste tutorial. Se você ainda estiver enfrentando problemas com isso, deixe-me saber na seção de comentários.

Confira também a versão original desse post em inglês
Esse post foi originalmente publicado no site itsfoss.com. Traduzido pela rtland.team

How to Connect to WiFi from the Terminal in Ubuntu Linux

Propaganda
Blog Comments powered by Disqus.
Propaganda