Como se conectar ao WiFi a partir da linha de comando?

145

Outras postagens parecem estar abordando problemas de conexão de rede mais complicados na linha de comando.

O botão / indicador de rede do painel Unity às vezes não responde muito bem - ele continua tentando se conectar a uma rede, mesmo quando clico em "desconectar", coisas assim.

Então, eu quero ir na linha de comando para o controle. Eu não gosto de GUIs de qualquer maneira.

Não existe uma ferramenta simples de linha de comando que possa fazer algo como o seguinte?

wifi connect MyNetworkNameA
wifi disconnect
wifi connect MyNetworkNameB
cmo
fonte
4
Depende, que segurança sem fio? Isso é abordado em detalhes aqui - help.ubuntu.com/community/NetworkConfigurationCommandLine/…
Panther
No Ubuntu 16.04 e 18.04, ainda há desconectamentos de wifi. Um comando de reconexão seria um bom hack.
AlikElzin-kilaka 20/07

Respostas:

193

Eu acho que você deseja continuar usando a interface gerenciada (pelo NetworkManager). nmclié uma ferramenta de linha de comando para controlar o NetworkManager.

  • Para ver a lista de conexões salvas, use ( <SavedWiFiConn>)

    nmcli c
    
  • Para ver a lista de pontos de acesso Wi-Fi disponíveis ( <WiFiSSID>)

    nmcli d wifi list
    

    ou:

    sudo iwlist wlan0 scanning
    
  • Para ver a lista de interfaces ( <WifiInterface>)

    ifconfig -a
    

Basta alterar <WifiInterface>, <WiFiSSID>, <WiFiPassword>nos seguintes comandos para refletir sua configuração. Se as informações de WiFi já tiverem sido salvas, use o <SavedWiFiConn>nome da conexão como foi salvo no NetworkManager.

Ubuntu 16.04

##disconnect
nmcli d disconnect <WifiInterface>

##connect
nmcli d connect <WifiInterface>

Outra maneira:

##disconnect
nmcli c down <SavedWiFiConn>

##connect
nmcli c up <SavedWiFiConn>

Ubuntu 15.10 e anterior

##disconnect
nmcli d disconnect iface <WifiInterface>

##connect
nmcli d wifi connect <WiFiSSID> password <WiFiPassword> iface <WifiInterface>

Outra maneira:

##disconnect:
nmcli c down id <SavedWiFiConn>

##connect:
nmcli c up id <SavedWiFiConn>

Se sua senha não for reconhecida automaticamente, digite:

nmcli -a c up <SavedWiFiConn>

Referência: man nmcli

user.dz
fonte
11
Funciona como um encanto! E, como se suspeita, a linha de comando responde imediatamente, enquanto a GUI pode ser lenta, não cooperativa e sem resposta às vezes.
cmo
11
Salvei meu dia em que perdi meu traço e barra de tarefas do Unity e a caixa de diálogo Configurações de rede continuava travando em qualquer tipo de estabelecimento de conexão de rede.
Janaka Bandara
11
@kirill_igum, desculpe se atrasar tranquila ocupado, você pode usar cronpara varredura agendamento wi-fi usando iwlist wlan0 scanningou nmcli d wifi listentão nmcli para se conectar à rede Wi-Fi correspondente dependendo de suas necessidades.
user.dz
11
O comando que eu estava emitindo estava dando um erro. Eu estava emitindo este comando: nmcli c up id "Apollo III Connect" deu um erro. Quando eu deixar de fora a palavra ide digitou este se conecta sem erro: nmcli c "Apollo III Connect". Eu entendo como conectá-lo agora. Você está dizendo idcomo parâmetro e substituindo a palavra idpelo nome da conexão que você está nomeando <WiFiConn>. Obrigado!
LD James
5
Para salvar uma configuração de conexão: sudo nmcli dev wifi con "SSID_NAME" password PASSWORD "CONFIG_NAME"Para encontrar auto suas configurações de conexão salvas:nmcli c
Cirelli94
75

nmtui solução ncurses

Ótima opção de gerenciador de rede ncurses interativo:

nmtui

Vem no mesmo pacote que nm-applet(o ícone padrão da barra superior) e nm-cli, portanto, está amplamente disponível.

Captura de tela:

insira a descrição da imagem aqui

Testado no Ubuntu 17.10.

Ciro Santilli adicionou uma nova foto
fonte
Obrigado! Por alguma razão, meu Ubuntu se recusou a se conectar ao Wifi, então liguei o cabo Ethernet e cliquei em Ativar Conexão com Fio e BAM!
ASGs
@Downvoters explique, nunca retaliar ;-)
Ciro Santilli新疆改造中心法轮功六四事件
3
funciona no Ubuntu 16.01, bem, solução legal!
Jan Sila
4
Esta é uma solução muito mais intuitiva do que o que está acima da IMO. A menos que você esteja tentando aprender como o Linux / Unix se conecta ao WiFi, esta parece ser a solução ideal para selecionar e pressionar Enter. Funciona bem no Ubuntu 18
jamzsabb 18/06/19
19

Se o seu ponto de acesso wi-fi for salvo, ele será conectado automaticamente. Ative ou desative a conexão sem fio com um comando mais simples:

nmcli nm wifi on
nmcli nm wifi off

na versão mais recente:

nmcli radio wifi on
nmcli radio wifi off

Para referência, consulte man nmcli.

LinuxLearner
fonte
11
Como você faz o NM ativar o wifi automaticamente durante a inicialização? Toda vez que eu reinicio, o Network Manager começa com o wifi desativado.
Cerin
@Cerin, você pode tentar adicionar este comando aos aplicativos de inicialização, consulte askubuntu.com/questions/243139/…
user.dz
E como no Ubuntu> 14.04.
monitor35
3

Se você deseja se conectar a uma rede chamada PrettyFlyForAWiFi-5G

nmcli -a d wifi connect PrettyFlyForAWiFi-5G

-a(ou --ask) significa que solicitará a senha. A conexão será salva e deverá se conectar automaticamente se você reiniciar o computador.

Você pode anexar password <your password>ao final (a palavra literal passwordseguida pela senha real)

nmcli d wifi connect PrettyFlyForAWiFi-5G password 12345678

mas talvez execute unset HISTFILEantes, para que sua senha do WiFi não seja salva no seu ~/.bash_historyarquivo.


Para ver todas as redes WiFi ao seu redor ( --rescan yesé opcional, a lista de redes pode ter até 30 segundos sem ela)

nmcli d wifi list --rescan yes

que produzirá algo como

IN-USE  SSID                         MODE   CHAN  RATE        SIGNAL  BARS  SECURITY
        PrettyFlyForAWiFi-5G         Infra  44    405 Mbit/s  59      ▂▄▆_  WPA2
        PrettyFlyForAWiFi            Infra  6     195 Mbit/s  41      ▂▄__  WPA1 WPA2

Para esquecer uma conexão (que foi salva após a execução nmcli -a d wifi connect <name>)

nmcli c delete PrettyFlyForAWiFi-5G

Para ver uma lista de todas as conexões salvas

nmcli c

Você pode usar em nmcli connectionvez de nmcli c <whatever>e em nmcli devicevez denmcli d

nmclié a interface de linha de comando do NetworkManager (que faz parte do GNOME , o ambiente de desktop padrão do Ubuntu) e já está instalada no Ubuntu.

Boris
fonte