Я отправляю здесь как испытывание затруднений из-за Wi-Fi после того, как приостановят.
Я недавно купил новую pcie карту Wi-Fi (ССЫЛКА TP TL-WN881N), и все это работает отлично. К сожалению, кажется, что вещи становятся плохими, когда я поместил свой компьютер для сна, поскольку Wi-Fi не работает правильно после пробуждения.
В поверхности проблема является странной. Это действительно соединяется с сетью Wi-Fi, соединение, показал в nm-апплете, соединение кажется в порядке в ifconfig, маршруты прекрасны, но кажется, что драйверы входят в ошибочный режим, где я не могу даже проверить с помощью ping-запросов (или достигнуть в так или иначе), мой шлюз или любое другое местоположение.
Я попробовал различные меры, как тот здесь, Wi-Fi не работает, после приостанавливают после 16,04 обновлений или здесь Беспроводных сетей, не работающих после резюме в Ubuntu 14.04 и ни один из них не работал. Самая странная вещь, если я пытаюсь вручную перезапустить услуги администратора сети, вещи не становятся решенными, и вместо этого я даже получаю проблемы, перечисляющие сети Wi-Fi. Перезагрузка походит на единственный способ решить проблему до сих пор.
Вот некоторые детали о моей карте и драйвере:
$sudo lshw -class network
*-network
description: Wireless interface
product: RTL8192EE PCIe Wireless Network Adapter
vendor: Realtek Semiconductor Co., Ltd.
physical id: 0
bus info: pci@0000:02:00.0
logical name: wlp2s0
version: 00
serial: 30:b4:9e:72:08:78
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=rtl8192ee driverversion=4.10.0-32-generic firmware=N/A ip=192.168.2.2 latency=0 link=yes multicast=yes wireless=IEEE 802.11
resources: irq:127 ioport:d000(size=256) memory:f7100000-f7103fff
Спасибо!
править:
Решенный! Спасибо @WinEunuuchs2Unix, кажется, что путем применения похожего метода, чем тот, описанный здесь, переключатели значка сигнала WiFi к значку Ethernet (стрелки вниз) после Приостанавливают?, мне удалось решить проблему.
Условия не были точно тем же, и я должен был адаптировать решение. В основном перезапуск администратора сети не решает проблему, но разгрузка перезагрузки модуля ядра работала! Таким образом, вот то, как я адаптировал сценарий:
#!/bin/sh
# NAME: /lib/systemd/system-sleep/wifi-reset
# DESC: Resets Realtek WiFi after a long suspend.
# DATE: Aug 25, 2017. Modified Aug 25, 2017.
MYNAME=$0
DRIVER=rtl8192ee
restart_wifi() {
/usr/bin/logger $MYNAME 'restart_wifi BEGIN'
/sbin/modprobe -v -r $DRIVER # This removes the driver
/sbin/modprobe -v $DRIVER # This starts the driver
#systemctl restart NetworkManager.service # network manager restart disabled as not needed
/usr/bin/logger $MYNAME 'restart_wifi END'
}
/usr/bin/logger $MYNAME 'case=[' ${1}' ]'
case "${1}/${2}" in
hibernate|suspend|pre*)
;;
resume|thaw|post*)
restart_wifi;;
esac
Это работает отлично теперь :)
Спасибо, ребята!
Решенный! Спасибо @WinEunuuchs2Unix, кажется, что путем применения похожего метода, чем тот, описанный здесь, переключатели значка сигнала WiFi к значку Ethernet (стрелки вниз) после Приостанавливают?, мне удалось решить проблему.
Условия не были точно тем же, и я должен был адаптировать решение. В основном перезапуск администратора сети не решает проблему, но разгрузка перезагрузки модуля ядра работала! Таким образом, вот то, как я адаптировал сценарий:
#!/bin/sh
# NAME: /lib/systemd/system-sleep/wifi-reset
# DESC: Resets Realtek WiFi after a long suspend.
# DATE: Aug 25, 2017. Modified Aug 25, 2017.
MYNAME=$0
DRIVER=rtl8192ee
restart_wifi() {
/usr/bin/logger $MYNAME 'restart_wifi BEGIN'
/sbin/modprobe -v -r $DRIVER # This removes the driver
/sbin/modprobe -v $DRIVER # This starts the driver
#systemctl restart NetworkManager.service # network manager restart disabled as not needed
/usr/bin/logger $MYNAME 'restart_wifi END'
}
/usr/bin/logger $MYNAME 'case=[' ${1}' ]'
case "${1}/${2}" in
hibernate|suspend|pre*)
;;
resume|thaw|post*)
restart_wifi;;
esac
Это работает отлично теперь :)
Спасибо, ребята!
У меня была подобная проблема, но с несколькими различиями все же.
Моим ноутбуком является Lenovo ThinkPad T470s под управлением Ubuntu 16.04.4 (гостеприимный) LTS.
После приостановки и возобновления, у меня было следующее поведение:
Перезапуск администратора сети (sudo systemctl restart network-manager.service
) не устранил бы проблему. Остановка его, ожидание в течение некоторого времени и запуск его снова не зафиксировали бы его также.
Для фиксации вручную я имел к:
определите мой драйвер Wi-Fi:
$ sudo lshw -C network
*-network
description: Wireless interface
product: Intel Corporation
vendor: Intel Corporation
physical id: 0
bus info: pci@0000:3a:00.0
logical name: wlp58s0
version: 78
serial: 00:e1:8c:dc:8c:7d
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=iwlwifi driverversion=4.13.0-43-generic firmware=31.560484.0 ip=192.168.0.9 latency=0 link=yes multicast=yes wireless=IEEE 802.11
resources: irq:128 memory:ec100000-ec101fff
перезапустите драйвер:
$ sudo /sbin/modprobe -r iwlwifi
$ sudo /sbin/modprobe iwlwifi
Для автоматического перезапуска драйвера после системного резюме я сделал somethings, подобные
Переключатели значка сигнала WiFi к значку Ethernet (стрелки вниз) после Приостанавливают?
то есть, я создал следующий сценарий iwlwifi-reset
в /lib/systemd/system-sleep/
, и сделанный этим исполняемый файл.
#!/bin/sh
# NAME: /lib/systemd/system-sleep/iwlwifi-reset
# DESC: Resets Intel WiFi after suspend.
# DATE: Jun 3, 2018.
MYNAME=$0
restart_wifi() {
/usr/bin/logger $MYNAME 'restart_wifi BEGIN'
/sbin/modprobe -r iwlwifi
/sbin/modprobe iwlwifi
/usr/bin/logger $MYNAME 'restart_wifi END'
}
/usr/bin/logger $MYNAME 'case=[' ${1}' ]'
case "${1}/${2}" in
hibernate|suspend|pre*)
;;
resume|thaw|post*)
restart_wifi;;
esac
В Ubuntu 18.04, чтобы заставить сценарий, который назовут на системное резюме, я должен был сделать выполняющие дополнительные шаги (я использую старый адаптер Edimax USB WiFi, таким образом, я назвал /lib/systemd/system-sleep/
сценарий edimax_wifi_wakeup
):
sudo vi /etc/systemd/system/sleep-resume.service
Его содержание:
[Unit]
Description=Edimax USB WiFi system suspend/resume handling
Before=sleep.target
StopWhenUnneeded=yes
[Service]
Type=simple
RemainAfterExit=yes
ExecStart=-/lib/systemd/system-sleep/edimax_wifi_wakeup suspend
ExecStop=-/lib/systemd/system-sleep/edimax_wifi_wakeup resume
[Install]
WantedBy=sleep.target
Включите сервис sudo systemctl enable sleep-resume
Это произошло после того, как у меня сработало несколько разных обходных путей: включая правильное представление SSID сети WIFI, значок сети WIFI (а не Ethernet на его месте) цвет значка (показывающий «подключено» и не пусто). Спасибо большое.
Единственное предложение для поиска подразумеваемого привода для тех, кто знает и использует его:
$ inxi -i
Network:
Device-1: Intel 82566MM Gigabit Network driver: e1000e
IF: enp0s25 state: down mac: 00:xx:xx:xx:xx:xx
Device-2: Qualcomm Atheros AR93xx Wireless Network Adapter driver: ath9k
IF: wls3 state: up mac: 00:yy:yy:yy:yy:yy
IP v4: 192.168.188.144/24 type: dynamic scope: global
IP v6: fe80::abf3:8fd0:3e74:915f/64 scope: link
WAN IP: 5.90.33.85
намного проще, мгновенно и полно других функций.