Como posso reiniciar minha conexão Wi-Fi a partir da linha de comando?

27

Ocasionalmente, minha conexão Wi-Fi não funciona mais por diversos motivos. Desativar e reativar o Wi-Fi por meio da interface gráfica do indicador de rede não resolve os problemas nesses casos.

Como posso reiniciar completamente minha conexão Wi-Fi a partir da linha de comando sem ter que reiniciar minha máquina (o que resolve esses problemas)?

    
por orschiro 13.08.2016 / 10:17

4 respostas

32

nmcli é um utilitário de linha de comando muito útil para interagir com o Network Manager. Use este comando no Ubuntu 16.04 LTS

nmcli radio wifi off && sleep 5 && nmcli radio wifi on

Para versões anteriores a 15.10 (ou seja, antes da transição para systemd ), o comando seria um pouco diferente:

nmcli nm wifi off && sleep 5 && nmcli nm wifi on

Ainda bem que isso não requer poderes de root.

Reiniciar o gerenciador de rede também é uma boa ideia.

Para 16.04 LTS:

sudo systemctl restart NetworkManager

e para 14.04 LTS:

sudo service network-manager restart

E se realmente quiséssemos, poderíamos até automatizá-lo com um script que reinicie seu wifi.

#!/bin/bash
# replace wlan0 with your device name
# as given by ip addr or ifconfig
while true 
do
    # keep checking if we have ip address    
    wifi_info=$(ip -4 -o addr  show wlan0 )
    while [ -n "$wifi_info" ];
    do
       wifi_info=$(ip -4 -o addr  show wlan0 )
       sleep 0.25
    done

    # We get here only if IP address is lost
    # which means we're off-line
    # restart wifi 
    nmcli radio wifi off && sleep 5 && nmcli radio wifi on
done
    
por Sergiy Kolodyazhnyy 13.08.2016 / 10:35
10

Duas alternativas que estou pensando seguem,

Primeira alternativa , diminuir / aumentar a interface

ifconfig wlan0 down ## assumes your wlan is named wlan0
ifconfig wlan0 up

Segunda alternativa , reinicie todo o gerenciador de rede. Isso pressupõe que você tenha o gerenciador de rede instalado. Caso contrário, instale-o com o seguinte cmd no seu terminal sudo apt-get install network-manager .

sudo service network-manager restart
    
por mattias 13.08.2016 / 10:23
5

No Ubuntu 15.10 e 16.04 LTS você pode usar o recurso systemd :

 systemctl restart NetworkManager.service
    
por GAD3R 13.08.2016 / 20:22
4

Use ifdown + nome da interface para desativar a rede

  

ifdown IFACE

Use ifup + nome da interface para ativá-lo

  

ifup IFACE

Substitua IFACE pelo nome do seu dispositivo, conforme fornecido por ifconfig

    
por Abhijith.s 13.08.2016 / 10:26