Иногда, мое соединение Wi-Fi больше не работает по различным причинам. Отключение и перевключение Wi-Fi через графический интерфейс индикатора сети не разрешают проблемы в этих случаях.
Как я могу полностью перезапустить свое соединение Wi-Fi от командной строки, не имея необходимость перезапускать мою машину (который решает эти проблемы)?
nmcli
очень полезная утилита командной строки для взаимодействия с Администратором сети. Используйте эту команду в Ubuntu 16.04 LTS
nmcli radio wifi off && sleep 5 && nmcli radio wifi on
Для версий до 15,10 (т.е. перед переходом к systemd
), команда немного отличалась бы:
nmcli nm wifi off && sleep 5 && nmcli nm wifi on
Хорошая вещь об этом - это не требует корневых полномочий.
администратор сети Перезапуска самостоятельно является хорошей идеей также.
Для 16.04 LTS:
sudo systemctl restart NetworkManager
и для 14.04 LTS:
sudo service network-manager restart
И если мы действительно хотели, мы могли бы даже автоматизировать его со сценарием, который перезапустит Ваш Wi-Fi.
#!/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
Две альтернативы, о которых я думаю, следуют,
Первая альтернатива , принесите вниз / интерфейс
ifconfig wlan0 down ## assumes your wlan is named wlan0
ifconfig wlan0 up
117-секундная альтернатива , перезапустите всего администратора сети. Это предполагает, что Вам установили администратора сети. В противном случае установите его со следующим cmd в Вашем терминале sudo apt-get install network-manager
.
sudo service network-manager restart
На Ubuntu 15.10 и 16.04 LTS можно использовать systemd
функция:
systemctl restart NetworkManager.service
Используйте ifdown
+ имя интерфейса для отключения сети
Использование ifdown IFACE
ifup
+ имя интерфейса для включения его
Замена ifup IFACE
IFACE
с именем устройства, как дано ifconfig