.png)
Моя беспроводная сетевая карта Intel 6205 не работает после спящего режима. Иногда она также не работает при загрузке, выдавая ошибку таким же образом. Иногда она также перестает работать после ~10 минут непрерывного использования.
Я экспериментировал с комбинациями: modprobe -r iwlwifi
до и после гибернации (или когда проблема возникает иным образом), затем modprobe iwlwifi
; и затем systemctl restart network-manager
и systemctl restart NetworkManager
. Эти решения — то, на чем фокусируются все результаты поиска симптомов.
Что еще мне следует попробовать?
Конфигурация:
- Дебиан Джесси
- ядро 3.14.4-1
- сетевой менеджер 0.9.8.10
- Intel 6205 rev 96 (iwlwifi)
- Lenovo ThinkPad X1 Карбон
$ dmesg wlan0: authenticate with 47:f2:2f:91:db:7b wlan0: Wrong control channel: center-freq: 5500 ht-cfreq: 5180 ht->primary_chan: 36 band: 1 - Disabling HT wlan0: direct probe to 47:f2:2f:91:db:7b (try 1/3) wlan0: direct probe to 47:f2:2f:91:db:7b (try 2/3) wlan0: direct probe to 47:f2:2f:91:db:7b (try 3/3) wlan0: authentication with 47:f2:2f:91:db:7b timed out wlan0: authenticate with 47:f2:2f:91:db:7b wlan0: send auth to 47:f2:2f:91:db:7b (try 1/3) wlan0: send auth to 47:f2:2f:91:db:7b (try 2/3) wlan0: send auth to 47:f2:2f:91:db:7b (try 3/3) wlan0: authentication with 47:f2:2f:91:db:7b timed out # the last 5 messages repeat indefinitely as connection is reattempted
решение1
Посмотрите на вывод этой команды, чтобы подтвердить, какие драйверы/модули использует ядро для вашего оборудования.
$ lshw -C network
...
*-network
description: Wireless interface
product: Centrino Wireless-N 1000 [Condor Peak]
vendor: Intel Corporation
physical id: 0
bus info: pci@0000:03:00.0
logical name: wlp3s0
version: 00
serial: 00:26:c7:85:a7:20
width: 64 bits
clock: 33MHz
capabilities: bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=iwlwifi driverversion=3.14.4-100.fc19.x86_64 firmware=39.31.5.1 build 35138 ip=192.168.1.161 latency=0 link=yes multicast=yes wireless=IEEE 802.11bgn
resources: irq:42 memory:f2400000-f2401fff
Имена драйверов указаны в строке конфигурации:
driver=iwlwifi
Проверьте и посмотрите, какие еще драйверы может использовать этот драйвер более высокого уровня:
$ lsmod | grep iwlwifi
iwlwifi 116346 1 iwldvm
cfg80211 513095 3 iwlwifi,mac80211,iwldvm
Попробуйте выгрузить все это rmmod <name>
, а затем загрузить заново:
$ sudo modprobe iwlwifi
Это должно автоматически загрузить драйвер верхнего уровня и все драйверы более низкого уровня.
Отключение беспроводной сети N
У меня было много проблем с большинством моих ноутбуков Thinkpad, где беспроводная связь работала нестабильно. Единственное решение, которое я нашел, это отключение функции Wireless-N модуля iwlwifi
. Вы можете узнать имя/опции этого параметра для модуля следующим образом:
$ modinfo iwlwifi | grep dis
parm: 11n_disable:disable 11n functionality, bitmap: 1: full, 2: disable agg TX, 4: disable agg RX, 8 enable agg TX (uint)
parm: wd_disable:Disable stuck queue watchdog timer 0=system default, 1=disable, 2=enable (default: 0) (int)
parm: power_save:enable WiFi power management (default: disable) (bool)
Итак, после удаления модуля, когда вы будете готовы перезагрузить его, modprobe
включите опцию 11n_disable
. Например:
$ sudo modprobe iwlwifi 11n_disable=1
Вы можете сделать это постоянным через свой modprobe.d
каталог от загрузки до загрузки.
решение2
Следующие шаги решили проблему.
Выполнить один раз (перезагрузить машину):
echo "options iwlwifi 11n_disable=1" > /etc/modprobe.d/iwlwifi.conf
/usr/sbin/update-initramfs -u
reboot
Тогда следующий скрипт должен бытьперезапускать каждый раз при выходе из спящего режима или загрузке системы.
/bin/systemctl stop network-manager
/sbin/modprobe -r iwldvm iwlwifi mac80211
/bin/systemctl start network-manager
/sbin/modprobe iwlwifi
Важно то, что сетевой менеджер должен быть запущен до загрузки драйверов ядра.
решение3
Недавно я столкнулся с этой проблемой на своем Wi-Fi после обновления 6.1.1-zen1-1-zen
ядра.
Ниже приведено решение проблемы для меня:
- отключите интерфейс Wi-Fi:
ip link set <your_wifi_interface> down
- остановить NetworkManager:
systemctl stop NetworkManager
- переместите файл (безопаснее, чем удалять) с тем же именем, что и интерфейс под
/var/run/wpa_supplicant/
- поднимите интерфейс
ip link set <your_wifi_interface> up
- запустить NetworkManager
systemctl start NetworkManager