¿Cómo puedo reiniciar mi conexión Wi-Fi desde la línea de comandos?

28

Ocasionalmente, mi conexión Wi-Fi ya no funciona por varias razones. Deshabilitar y volver a habilitar Wi-Fi a través de la interfaz gráfica del indicador de red no resuelve los problemas en estos casos.

¿Cómo puedo reiniciar completamente mi conexión Wi-Fi desde la línea de comandos sin tener que reiniciar mi máquina (lo que soluciona estos problemas)?

orschiro
fuente

Respuestas:

35

nmclies una utilidad de línea de comandos muy útil para interactuar con Network Manager. Use este comando en Ubuntu 16.04 LTS

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

Para versiones anteriores a 15.10 (es decir, antes de la transición a systemd) el comando sería ligeramente diferente:

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

Lo bueno es que esto no requiere poderes de raíz.

Reiniciar el administrador de red en sí mismo también es una buena idea.

Para 16.04 LTS:

sudo systemctl restart NetworkManager

y para 14.04 LTS:

sudo service network-manager restart

Y si realmente quisiéramos, incluso podríamos automatizarlo con un script que reinicie su 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
Sergiy Kolodyazhnyy
fuente
44
.serviceestá implícito, por lo que puede omitirsesudo systemctl restart NetworkManager
Zanna
1
@Zanna TIL ... He estado escribiendo .servicetodo este tiempo.
edwinksl
Funcionó como un encanto para mí.
Josh
Gracias excelente. ¿Por qué hay 2 comandos diferentes?
neverMind9
1
@TechLord Básicamente, es porque desde la versión 15.04, Ubuntu ha cambiado al systemdsistema init, lo que en realidad trae servicios básicos y demonios cuando arrancas. El problema es que, a diferencia de las cosas más antiguas, systemdintenta no solo comenzar las cosas, sino también administrarlas . Esto condujo a nmcliser reescrito para que coincida systemd. Al menos este es mi entendimiento.
Sergiy Kolodyazhnyy
10

Dos alternativas en las que estoy pensando son las siguientes:

Primera alternativa , bajar / subir la interfaz

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

Segunda alternativa , reinicie todo el administrador de red. Esto supone que tiene instalado el administrador de red. Si no, instálelo con el siguiente cmd en su terminal sudo apt-get install network-manager.

sudo service network-manager restart
mattias
fuente
5

En Ubuntu 15.10 y 16.04 LTS puede usar la systemdfunción:

 systemctl restart NetworkManager.service
GAD3R
fuente
4

Use el ifdownnombre de la interfaz + para deshabilitar la red

ifdown IFACE

Use ifup+ nombre de interfaz para habilitarlo

ifup IFACE

Reemplace IFACEcon el nombre de su dispositivo tal como lo indicaifconfig

Abhijith.s
fuente