Собрал здесь советы по устранению постоянных разрывов сети Wi-Fi адаптерами под Linux. Понятное дело, что чаще всего всё работает отлично, но иногда разрывы Wi-Fi происходят постоянно. Что же делать, если ваш Wi-Fi адаптер под Linux постоянно теряет сеть? Иногда он может терять сеть и не подключаться обратно вплоть до перезапуска компьютера или рестарта демона network-manager ( sudo service network-manager restart).
Попробуйте отключить режим сбережения энергии
Отключаем режим энергосбережения в Wi-Fi адаптере:
1 |
iw dev wlan0 set power_save off |
В этой команде wlan0 — это ваш Wi-Fi адаптер. Узнать это имя можно командой:
1 |
ip a |
У меня вывод такой (показываю только полезный кусок):
1 2 3 4 |
... 3: wlp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether ... ... |
То есть в моём случае имя wlp2s0, а значит для меня команда отключения энергосбережения будет выглядеть так:
1 |
iw dev wlp2s0 set power_save off |
В старых дистрибутивах Linux вместо ip a используется команда:
1 |
ifconfig |
Проверить текущее значения режима энергосбережения можно так:
1 |
iw dev wlan0 get power_save |
Попробуйте сменить network-manager на wicd
Для этого сначала установите wicd. Инструкцию для Debian можно найти в официальной wiki.
Здесь приведу выдержку команд, на случай, если тот сайт перестанет работать или страница будет перемещена:
1 2 3 |
$ su # aptitude update # aptitude install wicd |
Если нужно, исправьте «/etc/network/interfaces» так, чтобы содержалось лишь следующее:
1 2 3 4 5 6 |
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback |
Добавьте своего обычного пользователя в группу netdev, затем перезапустите DBus:
1 2 |
# adduser yourusername netdev # /etc/init.d/dbus reload |
Стартаните демона wicd:
1 |
# /etc/init.d/wicd start |
Запустите графическую оболочку wicd с обычного пользователя:
1 2 |
# exit $ wicd-client -n |
Подключитесь к какой-нибудь сети, после чего удалите network-manager:
1 |
apt-get remove network-manager |
Тоже приходилось мучиться.
Потом был поставлен какой-то левый пакет из левого репозитория (уже не помню откуда) и всё заработало
Возможно, расположенное поможет тем, кто страдает.
http://askubuntu.com/questions/635625/realtek-8723be-wifi-problem
First of all remove the settings you made.
sudo rm /etc/modprobe.d/rtl8723be.conf
If you do not have this file, nothing is wrong.
Then install a good driver
sudo add-apt-repository ppa:hanipouspilot/rtlwifi
sudo apt-get update
sudo apt-get install rtlwifi-new-dkms linux-firmware
Reboot and enjoy
If you still have problems, you may need to add an option:
echo «options rtl8723be ant_sel=2» | sudo tee /etc/modprobe.d/rtl8723be.conf
then reboot again.
Expanation is made by chili555 in this answer.
This is the same driver as https://github.com/lwfinger/rtlwifi_new, rock.new_btcoex branch but packed as dkms.
You can see all that at https://github.com/hanipouspilot/rtlwifi_new/tree/rock.new_btcoex
If you also need bluetooth working, run also:
sudo apt-get install rtl8723au-bt-dkms linux-firmware
Note: Support for 4.2 kernels and Ubuntu 15.10 has been added to the PPA. For kernel 4.2 the bluetooth driver should not be installed from the PPA. There is already native support of the bluetooth adapter in kernel 4.2.
Offline guide
If you do not have any internet connection, you can download the package using another computer, a phone, etc.
The package is HERE
You will also need DKMS installed. You can find the DKMS package for Ubuntu 16.04 HERE
Copy these two files to the Ubuntu Home folder (~/) and run in terminal
sudo dpkg -i dkms*.deb rtlwifi*.deb
Then reboot.
Important: For Ubuntu 16.04+ installed on a system with Secure Boot on UEFI, the unsigned kernel module may not load. In this case see THIS ANSWER to fix it.
Meanwile I will try to find a way how to sign the module in the PPA. There is a way how to do it.