Вы установили Linux, но система упорно не видит доступные Wi-Fi сети, хотя на Windows или смартфоне всё работает? Эта проблема знакома многим пользователям, особенно новичкам. Причины могут крыться как в программных настройках, так и в аппаратных особенностях вашего устройства. В отличие от Windows, где драйверы для Wi-Fi адаптеров обычно устанавливаются автоматически, в Linux этот процесс часто требует ручного вмешательства.
В этой статье мы разберём 10 основных причин, по которым Linux может не обнаруживать Wi-Fi сети, — от банального отключённого адаптера до сложностей с проприетарными драйверами. Вы узнаете, как диагностировать проблему с помощью терминала, где искать недостающие драйверы и какие команды помогут вернуть подключение. Особое внимание уделим популярным дистрибутивам: Ubuntu, Debian, Arch Linux и Fedora, так как решения могут отличаться.
Если вы не уверены в своих силах, не волнуйтесь: мы предоставим пошаговые инструкции с командами для копирования и скриншотами ключевых моментов. А для опытных пользователей добавим расширенные методы диагностики, включая анализ логов ядра и ручную компиляцию драйверов. Начнём с самого простого и постепенно перейдём к сложным случаям.
1. Проверка базовых настроек: включён ли Wi-Fi адаптер?
Прежде чем копать глубоко, убедитесь, что проблема не в банальных вещах. В Linux Wi-Fi адаптер может быть отключён на уровне системы, BIOS или даже физически (например, кнопкой на ноутбуке). Начнём с проверки состояния адаптера в системе.
Откройте терминал и выполните команду:
ip a
Ищите в выводе интерфейс с названием wlan0, wlp3s0 или подобным (зависит от модели адаптера). Если его нет — адаптер либо отключён, либо не распознан системой. Если интерфейс есть, но помечен как DOWN, включите его командой:
sudo ip link set wlan0 up
Замените wlan0 на ваш интерфейс.
- 🔍 Проверьте физическую кнопку Wi-Fi на ноутбуке (часто рядом с клавишами
F1-F12или отдельным переключателем). На некоторых моделях Lenovo, HP и Dell она может блокировать адаптер на аппаратном уровне. - 🖥️ Загляните в BIOS/UEFI: на некоторых материнских платах (особенно от ASUS и Gigabyte) Wi-Fi адаптер может быть отключён в настройках. Ищите опции типа
Wireless LANилиOnboard Wi-Fi. - 🔄 Перезагрузите модуль ядра, отвечающий за Wi-Fi. Это часто помогает при временных сбоях:
sudo modprobe -r iwlwifi && sudo modprobe iwlwifiДля адаптеров Broadcom замените
iwlwifiнаb43илиwl.
⚠️ Внимание: На некоторых ноутбуках (например, Lenovo ThinkPad серии T480 и новее) Wi-Fi может блокироваться из-за конфликта сrfkill— системой управления радиочастотными устройствами. Проверьте блокировку командойrfkill listи разблокируйте адаптер с помощьюrfkill unblock wifi.
2. Отсутствие драйверов: самая распространённая проблема
Более 60% случаев, когда Linux не видит Wi-Fi, связаны с отсутствием или неправильной работой драйверов. В отличие от Windows, где производители поставляют готовые пакеты, в Linux драйверы для Wi-Fi адаптеров часто требуют ручной установки, особенно если ваше устройство новое или использует проприетарные чипы.
Чтобы узнать модель вашего Wi-Fi адаптера, выполните:
lspci -knn | grep -iA3 net
Ищите строки с упоминанием Network controller. Например, вывод может содержать:
03:00.0 Network controller [0280]: Intel Corporation Wi-Fi 6 AX200 [8086:2723] (rev 1a)
Subsystem: Intel Corporation Wi-Fi 6 AX200NGW [8086:0024]
Kernel driver in use: iwlwifi
Здесь Intel Corporation Wi-Fi 6 AX200 — модель адаптера, а iwlwifi — используемый драйвер.
| Производитель чипа | Типичные модели адаптеров | Драйвер в Linux | Требует ли проприетарное ПО? |
|---|---|---|---|
| Intel | AX200, AX210, 8265, 7265 | iwlwifi |
Нет (открытый) |
| Broadcom | BCM4313, BCM4360, BCM4352 | b43, wl, brcmsmac |
Да (часто) |
| Qualcomm Atheros | QCA6174, QCA9377, AR9485 | ath10k_pci, ath9k |
Нет |
| Realtek | RTL8821CE, RTL8188EE, RTL8723DE | rtl8xxxu, rtl8188ee |
Да (часто) |
| Mediatek (Ralink) | MT7921, RT3290 | mt7921e, rt2800pci |
Иногда |
Если ваш адаптер требует проприетарного драйвера (например, многие чипы Broadcom или Realtek), его нужно установить вручную. Для Ubuntu/Debian это делается так:
sudo apt update
sudo apt install firmware-b43-installer # Для Broadcom
ИЛИ
sudo apt install rtl8821ce-dkms # Для Realtek RTL8821CE
Для Arch Linux используйте yaourt или yay:
yay -S rtl8821ce-dkms-git
⚠️ Внимание: Драйверы для новых чипов (например, Intel AX211 или Mediatek MT7922) могут отсутствовать в стандартных репозиториях. В этом случае придётся компилировать их из исходников с сайта производителя или использовать более новую версию ядра Linux (5.15+).
☑️ Проверка драйверов Wi-Fi в Linux
3. Конфликты модулей ядра: когда драйверов слишком много
Иногда проблема не в отсутствии драйверов, а в их избытке. Linux может пытаться использовать неправильный модуль ядра для вашего адаптера, что приводит к конфликтам. Например, для чипов Broadcom может загружаться одновременно b43 и wl, что ломает работу Wi-Fi.
Проверьте загруженные модули командой:
lsmod | grep -i wifi
Если вы видите несколько модулей для одного адаптера (например, b43 и wl), нужно отключить лишние. Сначала узнайте, какой модуль действительно нужен вашему устройству (см. таблицу в предыдущем разделе), затем добавьте остальные в чёрный список.
Откройте файл конфигурации:
sudo nano /etc/modprobe.d/blacklist.conf
И добавьте строки для блокировки ненужных модулей. Например, для Broadcom BCM4313 может понадобиться:
blacklist b43
blacklist ssb
blacklist bcma
Сохраните файл (Ctrl+O → Enter → Ctrl+X), затем обновите инициализацию модулей:
sudo update-initramfs -u
И перезагрузите систему.
- 🔧 Для адаптеров Realtek часто требуется отключить встроенный модуль
rtl8xxxuи использоватьrtl8821ceиз DKMS. Добавьте в чёрный список:blacklist rtl8xxxu - 🌐 Если после изменений Wi-Fi перестал работать совсем, вернитесь в
blacklist.confи закомментируйте добавленные строки символом#. - 📡 Для чипов Mediatek (например, MT7921) может понадобиться ядро версии 5.12+. Проверьте свою версию командой
uname -r.
Как узнать, какой модуль ядра используется?
Выполните команду dmesg | grep -i firmware. В выводе ищите строки с упоминанием вашего адаптера (например, iwlwifi для Intel). Если есть ошибки типа firmware: failed to load, значит, драйвер загружен, но отсутствует прошивка (firmware).
4. Отсутствие firmware: когда драйвер есть, но не хватает прошивки
Драйвер может быть установлен, но для работы адаптера требуется дополнительный файл прошивки (firmware). Это особенно актуально для новых чипов, где прошивка не включена в стандартные пакеты дистрибутива. Симптомы: адаптер определяется системой, но не находит сети или выдаёт ошибки в логах.
Проверьте логи ядра на предмет ошибок прошивки:
dmesg | grep -i firmware
Если вы видите сообщения вроде:
iwlwifi 0000:03:00.0: firmware: failed to load iwlwifi-cc-a0-66.ucode (-2)
значит, система не может найти файл прошивки для вашего адаптера. Решение — установить пакет с firmware.
Для Debian/Ubuntu:
sudo apt install firmware-iwlwifi # Для Intel
sudo apt install firmware-realtek # Для Realtek
sudo apt install firmware-misc-nonfree # Общий пакет
Для Arch Linux:
sudo pacman -S linux-firmware
Если прошивка отсутствует даже после установки пакетов, её можно скачать вручную с официального сайта производителя. Например, для Intel AX200:
- Скачайте последний
.ucode-файл с официальной вики. - Поместите его в директорию
/lib/firmware: - Обновите инициализацию:
sudo cp iwlwifi-cc-a0-66.ucode /lib/firmware/
sudo update-initramfs -u
⚠️ Внимание: Для адаптеров Realtek RTL88x2ce (например, RTL8822CE) может потребоваться ручная компиляция драйвера из репозитория на GitHub. Инструкции обычно прилагаются в README проекта. Будьте осторожны: неправильная компиляция может привести к падению системы!
5. Проблемы с NetworkManager: когда сеть есть, но не отображается
Иногда Wi-Fi адаптер работает, сети сканируются, но не отображаются в графическом интерфейсе (например, в GNOME или KDE Plasma). Виной тому может быть NetworkManager — служба управления сетями, которая по умолчанию используется в большинстве дистрибутивов.
Сначала проверьте, запущен ли NetworkManager:
systemctl status NetworkManager
Если служба не активна, запустите её:
sudo systemctl start NetworkManager
sudo systemctl enable NetworkManager
Если NetworkManager работает, но сети не показываются, попробуйте:
- 🔄 Перезапустить службу:
sudo systemctl restart NetworkManager - 📡 Вручную просканировать сети:
nmcli device wifi rescanЗатем проверьте список доступных сетей:
nmcli device wifi list - 🔧 Сбросить настройки NetworkManager (если конфигурация повреждена):
Внимание: это удалит все сохранённые подключения!sudo rm /etc/NetworkManager/system-connections/*sudo systemctl restart NetworkManager
- 🛠️ Попробовать альтернативу —
wpa_supplicant+dhcpcd. Это более сложный метод, но иногда помогает при проблемах с NetworkManager.
Если сети видны в nmcli, но не в графическом интерфейсе, проблема может быть в applet-е (индикаторе сети). Для GNOME попробуйте перезапустить его:
killall nm-applet
nm-applet &
6. Аппаратные проблемы: когда виноват железо
Если все программные методы испробованы, но Wi-Fi по-прежнему не работает, возможно, проблема в самом адаптере или антеннах. Это особенно актуально для старых ноутбуков или устройств после падений/ремонта.
Как диагностировать аппаратные проблемы:
- 🔧 Проверьте подключение антенн: на ноутбуках Wi-Fi адаптер обычно расположен под крышкой на задней панели. Убедитесь, что антенные кабели (тонкие чёрные провода) плотно подключены к разъёмам
MAINиAUX. - 🌡️ Перегрев: некоторые адаптеры (например, Intel 7260) при перегреве отключаются. Проверьте температуру командой:
sudo lm-sensorsЕсли адаптер нагревается выше 70°C, возможно, требуется очистка от пыли или замена термопасты.
- 🔄 Тестирование на другом устройстве: если есть возможность, подключите адаптер к другому ПК или ноутбуку (например, через USB Wi-Fi донгл). Если проблема повторяется — адаптер неисправен.
- 📡 Конфликт с USB 3.0: некоторые Wi-Fi адаптеры (особенно на чипах Realtek RTL8812AU) конфликтуют с портами USB 3.0. Попробуйте подключить донгл к порту USB 2.0 (обычно чёрного цвета).
Если адаптер встроенный (например, в ноутбуке), и вы подозреваете его неисправность, можно временно использовать внешний USB-адаптер. Хорошо зарекомендовали себя модели на чипах:
- TP-Link TL-WN725N (чип
RTL8188EU, поддерживается "из коробки" в большинстве дистрибутивов). - Edimax EW-7811Un (чип
RTL8188CUS, работает с драйверомrtl8192cu). - Intel AX200NGW (для M.2 слота, требует ядро 5.4+).
⚠️ Внимание: На некоторых ноутбуках (например, Dell XPS 13 или Lenovo Yoga) встроенный Wi-Fi адаптер может быть отключён на уровне BIOS из-за политики производителя. В этом случае поможет только прошивка модифицированного BIOS или использование внешнего адаптера.
7. Проблемы с регуляторными ограничениями (regulatory domain)
Linux соблюдает регуляторные ограничения разных стран, что может приводить к ограничению мощности Wi-Fi или даже полному отключению некоторых каналов. Если ваш адаптер работает, но не видит сети на каналах выше 11 (например, в диапазоне 5 ГГц), проблема может быть в неверных настройках regulatory domain.
Проверьте текущие настройки:
iw reg get
Если вывод содержит:
country 00: DFS-UNSET
значит, регион не установлен, и адаптер работает в ограниченном режиме. Исправить это можно так:
sudo iw reg set RU # Для России
sudo systemctl restart NetworkManager
Замените RU на код вашей страны (например, US, EU). Полный список кодов можно найти в файле /usr/lib/crda/regulatory.db.
Если после смены региона Wi-Fi по-прежнему не видит сети 5 ГГц, проверьте поддержку диапазона вашим адаптером. Некоторые старые модели (например, Intel Centrino Wireless-N 1000) работают только в диапазоне 2.4 ГГц.
8. Конфликты с другими программами (VPN, фаерволы, антивирусы)
Иногда Wi-Fi не работает из-за конфликтов с другим программным обеспечением. Частые виновники:
- 🔒 Фаерволы:
ufw,firewalldилиiptablesмогут блокировать сетевые подключения. Проверьте правила:sudo ufw statusЕсли фаервол активен, временно отключите его для теста:
sudo ufw disable - 🌐 VPN-клиенты: некоторые VPN (например, OpenVPN или WireGuard) могут менять маршруты или блокировать подключения. Отключите VPN и проверьте Wi-Fi.
- 🛡️ Антивирусы: ClamAV или Sophos в редких случаях могут вмешиваться в сетевые подключения. Попробуйте временно остановить службу антивируса.
- 📡 Другие сетевые менеджеры: если вы устанавливали
wicd,connmanилиnetctlрядом с NetworkManager, они могут конфликтовать. Удалите лишние пакеты:sudo apt remove wicd # Для Debian/Ubuntu
Если подозреваете, что проблема в конкретной программе, проверьте логи системы:
journalctl -xe | grep -i wifi
Ищите ошибки, связанные с сетью или блокировками.
Особое внимание стоит уделить DNS-настройкам. Если Wi-Fi подключается, но страницы не открываются, проблема может быть в DNS. Проверьте:
ping 8.8.8.8
Если пинг проходит, но сайты не открываются, попробуйте сменить DNS:
sudo nano /etc/resolv.conf
Добавьте строки:
nameserver 8.8.8.8
nameserver 1.1.1.1
FAQ: Частые вопросы о Wi-Fi в Linux
Мой Wi-Fi адаптер определяется, но не находит сети. В чём дело?
Это типично для случаев, когда:
- Не хватает прошивки (
firmware). Проверьте логи ядра командойdmesg | grep -i firmware. - Адаптер отключён программно. Проверьте
rfkill listи разблокируйте его. - Неверно настроен
regulatory domain. Установите правильный регион командойsudo iw reg set RU.
Также убедитесь, что рядом есть активные Wi-Fi сети (проверьте на смартфоне).
После обновления ядра Wi-Fi перестал работать. Что делать?
Обновление ядра может сломать совместимость с проприетарными драйверами. Решения:
- Переустановите драйвер для вашей версии ядра. Например, для Realtek RTL8821CE:
sudo dkms remove rtl8821ce/версия --allsudo dkms install rtl8821ce/версия
- Откат на предыдущую версию ядра (если новая нестабильна).
- Установка более нового драйвера из репозитория производителя.
Проверьте совместимость вашего адаптера с текущим ядром на сайте wireless.wiki.kernel.org.
Можно ли использовать Windows-драйвер для Wi-Fi в Linux?
Да, но с оговорками. Проект ndiswrapper позволяет загружать Windows-драйверы (.inf и .sys файлы) в Linux, но:
- Это нестабильное решение, которое может привести к падениям системы.
- Не все драйверы поддерживаются (особенно для Windows 10/11).
- Производительность и стабильность будут хуже, чем с нативными драйверами.
Установить ndiswrapper можно так:
sudo apt install ndiswrapper-common ndiswrapper-utils-1.9 # Debian/Ubuntu
sudo pacman -S ndiswrapper # Arch Linux
Но мы рекомендуем искать нативные решения или покупать совместимый адаптер.
Wi-Fi работает, но постоянно отключается. Как исправить?
Причины нестабильного подключения:
- Экономия энергии: отключите её для Wi-Fi адаптера:
sudo iw dev wlan0 set power_save offЧтобы сделать это постоянно, добавьте строку в
/etc/rc.local(доexit 0). - Слабый сигнал: проверьте уровень сигнала командой
iwconfig wlan0. ЕслиSignal levelниже -70 dBm, попробуйте переместиться ближе к роутеру или сменить канал на роутере (в настройках роутера выберите канал с меньшими помехами). - Конфликты с Bluetooth: на некоторых ноутбуках Wi-Fi и Bluetooth используют одну антенну. Отключите Bluetooth для теста.
Также проверьте логи на ошибки:
dmesg | grep -i wifi
Какой Wi-Fi адаптер лучше купить для Linux?
Рекомендуемые адаптеры с хорошей поддержкой в Linux:
| Тип | Модель | Чип | Диапазоны | Примечания |
|---|---|---|---|---|
| USB | TP-Link TL-WN725N v3 | RTL8188EU | 2.4 ГГц | Работает "из коробки" в большинстве дистрибутивов. |
| USB | Edimax EW-7811Un | RTL8188CUS | 2.4 ГГц | Хорош для Raspberry Pi. |
| PCIe | Intel AX200 | AX200 | 2.4 + 5 ГГц | Требует ядро 5.4+. Поддерживает Wi-Fi 6. |
| M.2 | Intel 9260NGW | 9260 | 2.4 + 5 ГГц | Хорошая альтернатива встроенным адаптерам в ноутбуках. |
Избегайте адаптеров на чипах Realtek RTL8192EU и RTL8811AU — они часто требуют ручной компиляции драйверов.