Как перезагрузить WiFi соединение? - proUbuntu
58 голосов
/ 23 марта 2013

Я думаю, у меня нет проблем с оборудованием. Иногда соединение WiFi просто отключается, по-видимому. Так что это не обязательно так же, как в этом случае , мне может не потребоваться перезагрузка каких-либо модулей.

а как просто перезагрузить wlan0? Я пытался restart network-manager, но, похоже, wlan0 остается один.

Ответы [ 6 ]

117 голосов
/ 03 января 2014

Вам просто нужно перезапустить Network Manager :

sudo service network-manager restart
14 голосов
/ 24 марта 2013

Попробуйте это:

sudo ifconfig wlan0 down
sudo ifconfig wlan0 up
12 голосов
/ 01 марта 2016

Это не требует root, если вы пишете сценарий:

nmcli networking off 
nmcli networking on

Для получения дополнительной информации: man nmcli

РЕДАКТИРОВАТЬ :

Как говорят эти парни в комментариях, только для WI-FI:

nmcli radio wifi off
nmcli radio wifi on
6 голосов
/ 03 января 2014

Вы можете попробовать отключить питание вашего устройства. Предполагая, что вы не можете / не хотите физически отключать устройство, вы должны запустить (от имени root): iwconfig wlan0 txpower off. Затем я подождал бы 10-15 секунд, чтобы убедиться, что проблема с оборудованием вызвала проблему, и затем: iwconfig wlan0 txpower auto.

Или вы можете просто запустить rfkill и заблокировать / разблокировать ваше устройство. Для этого выполните rfkill block wifi, а затем rfkill unblock wifi. Эта вторая опция должна быть быстрее, так как вам нужно только подождать 2-3 секунды между командами, а не 10-15 секунд. На самом деле, на моей машине мне вообще не нужно ждать, хотя я подозреваю, что это зависит от вашего оборудования WiFi. Эта опция также может быть сделана обычным пользователем, без рута.

Вы также можете перезапустить NetworkManager. Если вы используете systemctl в качестве системы инициализации (как в случае с более новыми версиями Ubuntu), вы можете использовать systemctl restart NetworkManager. В противном случае вы можете использовать sudo initctl restart network-manager. Если вы не знаете, какую систему инициализации вы используете, попробуйте обе команды и посмотрите, что работает.

2 голосов
/ 09 августа 2017

Создан скрипт, основанный на предыдущих советах по ссылкам с некоторым смешиванием и сопоставлением предыдущих ссылок. Это работает для меня под управлением Mint Linux 17.3.

Файл ниже не требует root-доступа. Это также только перезапускает Wi-Fi только , если он уже выключен. Теперь мне просто нужно добавить этот скрипт в работу cron, чтобы каждые 15 минут проверять подключение к Wi-Fi.

#!/bin/bash

wlan=$(/sbin/ifconfig wlan0 | grep inet\ addr | wc -l)
if [ $wlan -eq 0 ]; then
nmcli nm wifi on
else
echo "interface is up"
fi
1 голос
/ 18 марта 2019

«Перезагрузить драйвер»

Найти имя модуля

Давайте найдем название модуля ядра для вашего беспроводного соединения:

sudo hwinfo --network

(Установите пакет hwinfo, если у вас его нет.)

Найдите имя модуля в строке «Драйвер».

Перезагрузите модуль

Теперь выгрузите и перезагрузите модуль. Например, мой модуль называется iwlwifi

Возможно, вам повезет, но, скорее всего, вы получите это сообщение об ошибке:

$ sudo modprobe -r iwlwifi
modprobe: FATAL: Module iwlwifi is in use.

Итак, мы ищем другие модули, используя iwlwifi:

$ lsmod |grep iwlwifi
iwlwifi               241664  1 iwldvm
cfg80211              765952  4 iwldvm,iwlwifi,mac80211,rtl8187

Слева - название модуля, а справа - другие модули, использующие его. Итак, давайте сначала попробуем отключить iwldvm:

$ sudo modprobe -r iwldvm

Если это работает, то теперь мы можем успешно отключить iwlwifi

$ sudo modprobe -r iwlwifi

А теперь снова включите оба модуля в обратном порядке:

$ sudo modprobe iwlwifi
$ sudo modprobe iwldvm

Готово!

Это единственная процедура, которая сработала для меня при сбросе настроек низкого уровня (фраг, скорость), которые я установил с помощью iwconfig.

Эффективно это «перезагрузить драйвер».

Добро пожаловать на сайт proUbuntu, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...