LinuxRuLinux без лишней теории
Сеть в Linux

Не работает Wi-Fi в Linux: пошаговая диагностика и решение

Редакция LinuxRu7 мин чтенияИнструкции

Если не работает Wi-Fi в Linux, проверьте по порядку: включено ли радио и нет ли блокировки rfkill, видит ли система адаптер в lspci или lsusb, загружен ли драйвер и его прошивка, управляет ли интерфейсом NetworkManager. На каждом шаге есть команда, которая сразу показывает причину. Ниже весь путь с пакетами для Debian, Ubuntu, Fedora и Arch.

Не работает Wi-Fi в Linux: пошаговая диагностика и решение
Фото: Gpkp, CC BY-SA 4.0, Wikimedia Commons
Содержание
  1. Проверка за минуту
  2. Виден ли адаптер
  3. Блокировки rfkill
  4. Прошивки
  5. Сторонние драйверы
  6. NetworkManager
  7. Обрывы и 5 ГГц
  8. Что приложить
  9. Частые вопросы

Проверка за минуту: режим полёта и радио

Прежде чем искать драйверы, исключите банальное. Половина обращений "Wi-Fi пропал" решается одной командой.

# включено ли радио Wi-Fi в NetworkManager
nmcli radio wifi
# включить, если ответ disabled
nmcli radio wifi on
# есть ли блокировки
rfkill list

Проверьте также значок режима полёта в панели GNOME или KDE и клавишу с антенной на ноутбуке (обычно сочетание с Fn). Если rfkill пишет Soft blocked: yes или Hard blocked: yes, переходите к разделу о блокировках. Если блокировок нет и радио включено, а сетей всё равно не видно, начинаем диагностику по шагам: адаптер, драйвер, прошивка, NetworkManager.

Видит ли система Wi-Fi адаптер и какой у него драйвер

Первый вопрос: обнаружено ли устройство и загрузился ли для него драйвер.

# встроенные адаптеры PCIe (почти все ноутбуки)
lspci -knn | grep -iA3 'network\|wireless'
# USB-свистки
lsusb
# есть ли беспроводной интерфейс
ip link
iw dev

В выводе lspci -knn смотрите на две строки. В квадратных скобках идентификатор вида [8086:2725]: первая половина - производитель (8086 Intel, 10ec Realtek, 14e4 Broadcom, 14c3 MediaTek, 168c Qualcomm Atheros), вторая - модель. Строка Kernel driver in use показывает рабочий драйвер: iwlwifi, rtw89_8852be, mt7921e, ath11k_pci, brcmfmac и так далее.

  • Устройства нет в lspci и lsusb. Адаптер выключен в BIOS, отключён аппаратно или неисправен. Зайдите в настройки прошивки и найдите пункт Wireless или WLAN.
  • Устройство есть, но нет строки Kernel driver in use. Нет драйвера в ядре или он не подходит. Смотрите разделы о прошивках и сторонних драйверах.
  • Драйвер есть, а интерфейса wlan0 или wlp2s0 нет. Почти всегда не загрузилась прошивка.

Блокировки rfkill: программные и аппаратные

rfkill показывает два вида блокировки. Программная снимается командой, аппаратная только тем, что её вызвало: переключателем, клавишей Fn или настройкой BIOS.

rfkill list
# снять программную блокировку Wi-Fi
sudo rfkill unblock wifi
# или все радиоустройства сразу
sudo rfkill unblock all

Если Hard blocked: yes не уходит ни клавишей, ни после перезагрузки, загляните в вывод rfkill list целиком. Иногда блокировку объявляет не сам адаптер, а модуль производителя ноутбука, например ideapad_laptop на некоторых Lenovo или dell-rbtn на Dell. Для проверки выгрузите такой модуль и посмотрите, пропала ли блокировка:

sudo modprobe -r ideapad_laptop
rfkill list

Если помогло, модуль можно запретить файлом в /etc/modprobe.d/ со строкой blacklist ideapad_laptop, но учтите: вместе с ним пропадут и функции вроде переключения режима батареи. Сначала поищите обновление BIOS для своей модели.

Отдельный случай - компьютер с Windows рядом. Режим быстрого запуска Windows оставляет адаптер в состоянии, которое Linux не всегда может сбросить. Выключите быстрый запуск в настройках электропитания Windows, об этом же говорится в статье про установку Linux рядом с Windows 11.

Прошивки: самая частая причина у новых адаптеров

Большинство современных адаптеров требуют файл прошивки, который драйвер загружает при старте. Если файла нет, в журнале ядра будет ошибка:

sudo dmesg | grep -iE 'firmware|iwlwifi|rtw|mt79|ath1|brcm'
# или через journald за текущую загрузку
journalctl -k -b | grep -i firmware

Строки вида failed to load или Direct firmware load ... failed означают, что не хватает пакета с прошивкой. Названия различаются:

ПроизводительDebian 13Ubuntu 26.04Fedora 44Arch Linux
Intelfirmware-iwlwifilinux-firmwareiwlwifi-mvm-firmwarelinux-firmware-intel
Realtekfirmware-realteklinux-firmwarerealtek-firmwarelinux-firmware-realtek
MediaTekfirmware-misc-nonfree или firmware-mediateklinux-firmwaremt7xxx-firmwarelinux-firmware-mediatek
Qualcomm Atherosfirmware-atheroslinux-firmwareatheros-firmwarelinux-firmware-atheros
Broadcom (brcmfmac)firmware-brcm80211linux-firmwarebrcmfmac-firmwarelinux-firmware-broadcom

В Debian прошивки лежат в отдельном разделе репозитория non-free-firmware. Установщик Debian 13 обычно подключает его сам, но после минимальной установки проверьте файл /etc/apt/sources.list.d/debian.sources: в строке Components должно быть main non-free-firmware. Подробнее о настройке Debian для домашнего компьютера в статье Debian 13 после установки.

# Debian: пример для Intel
sudo apt update
sudo apt install firmware-iwlwifi
# перезагрузить драйвер без перезагрузки системы
sudo modprobe -r iwlwifi && sudo modprobe iwlwifi

В Arch пакет linux-firmware с 2025 года стал набором зависимостей от пакетов отдельных производителей, при минимальной установке можно ставить только нужный. Для очень новых адаптеров прошивки может не оказаться даже в свежем пакете, тогда выручает более новое ядро и linux-firmware из обновлений или бэкпортов.

Драйвер Wi-Fi, которого нет в ядре

Без интернета драйвер не скачать, поэтому сначала подключите кабель или телефон в режиме USB-модема: Android и iPhone в этом режиме определяются как обычная сетевая карта без всяких драйверов.

Broadcom

Часть чипов Broadcom, особенно в ноутбуках прошлых лет (например BCM4313, BCM4352, BCM4360), нормально работает только с проприетарным драйвером wl. Точный список поддерживаемых открытыми драйверами моделей ведётся в ArchWiki на странице Broadcom wireless.

# Ubuntu: через Дополнительные драйверы или командой
sudo ubuntu-drivers list
sudo apt install bcmwl-kernel-source
# Debian: нужен раздел non-free
sudo apt install broadcom-sta-dkms
# Fedora: из репозитория RPM Fusion nonfree
sudo dnf install akmod-wl
# Arch
sudo pacman -S broadcom-wl-dkms

Если одновременно загружены b43, bcma или brcmsmac, они могут мешать wl. Пакеты обычно сами запрещают их, проверьте командой lsmod | grep -E 'b43|bcma|brcm|wl'.

Realtek USB и другие модули DKMS

Современные Realtek для PCIe (серии 8822, 8852) обслуживаются драйверами rtw88 и rtw89 из ядра. С частью USB-адаптеров, например на чипах RTL8812AU, приходится ставить внешний модуль через DKMS. Берите драйвер из репозитория дистрибутива или AUR, а не из случайного архива. Модуль DKMS пересобирается при каждом обновлении ядра, и для этого нужны заголовки ядра (linux-headers).

С включённым Secure Boot сторонний модуль не загрузится, пока не подписан вашим ключом MOK. Как это сделать, не отключая защиту, разобрано в статье Secure Boot и Linux.

Адаптер работает, но сетей нет: NetworkManager

Если интерфейс есть, а список сетей пуст или он показан как unmanaged, проблема на уровне управления сетью.

systemctl status NetworkManager
nmcli device status
# пересканировать и показать сети
nmcli device wifi rescan
nmcli device wifi list
# подключиться, пароль спросят интерактивно
nmcli --ask device wifi connect "MyHomeWiFi"

Состояние unmanaged значит, что интерфейс отдан другой программе. Так бывает, если на Ubuntu Server в netplan указан renderer networkd, или параллельно запущены iwd, systemd-networkd или отдельный wpa_supplicant. Оставьте одного управляющего:

systemctl list-units --type=service | grep -E 'iwd|wpa_supplicant|networkd'
sudo systemctl disable --now iwd
sudo systemctl restart NetworkManager

Если сеть видна, но подключение сразу отваливается, удалите старый профиль с неправильным паролем или настройками и создайте заново: nmcli connection delete "MyHomeWiFi". Как читать журнал службы, есть в статье про systemctl: команда journalctl -u NetworkManager -b покажет причину отказа.

Сеть есть, но рвётся или не видно 5 ГГц

Энергосбережение

На ноутбуках частая причина обрывов - экономия энергии адаптера. Отключите её для всех подключений:

sudo tee /etc/NetworkManager/conf.d/wifi-powersave-off.conf >/dev/null <<'EOF'
[connection]
wifi.powersave = 2
EOF
sudo systemctl restart NetworkManager

Значение 2 выключает энергосбережение, 3 включает. Батарея от этого садится немного быстрее, о балансе между стабильностью и временем работы рассказано в статье как увеличить время работы ноутбука.

Регион и каналы

Если не видна сеть 5 ГГц, а телефон её видит, проверьте регуляторный домен. В домене по умолчанию часть каналов запрещена:

iw reg get
sudo iw reg set RU

Чтобы регион сохранялся после перезагрузки, создайте файл /etc/modprobe.d/cfg80211.conf со строкой options cfg80211 ieee80211_regdom=RU. Обычно домен подхватывается и автоматически от роутера. Также проверьте на роутере номер канала: каналы DFS (52-144) поддерживаются не всеми адаптерами.

WPA3 и защита кадров

Старые адаптеры и драйверы плохо работают со смешанным режимом WPA2/WPA3. Если подключение висит на аутентификации, временно переключите роутер в WPA2-PSK и проверьте. Помогает и обновление ядра.

Пропал Wi-Fi сразу после обновления? Перезагрузитесь и в меню GRUB выберите предыдущее ядро в разделе дополнительных параметров. Если на старом ядре всё работает, это регрессия: не удаляйте старое ядро, пока не выйдет исправление, и проверьте вывод dkms status, если стоит сторонний модуль.

Что собрать перед вопросом на форуме

Если ничего не помогло, соберите информацию одной командой и приложите к вопросу на форуме дистрибутива. Без неё вам всё равно зададут те же вопросы.

{ uname -a; cat /etc/os-release; lspci -knn | grep -iA3 'network\|wireless'; lsusb; rfkill list; nmcli device status; journalctl -k -b | grep -iE 'firmware|wlan|wifi|iwl|rtw|mt7|ath|brcm'; } > ~/wifi-report.txt 2>&1

Укажите модель ноутбука или адаптера, версию дистрибутива и что именно вы уже пробовали. Перед публикацией просмотрите файл: MAC-адреса и названия соседских сетей лучше заменить. Справочник по командам iw, wpa_supplicant и драйверам ведётся в ArchWiki, раздел о беспроводных сетях, он полезен и пользователям других дистрибутивов.

Частые вопросы

Почему Ubuntu не видит Wi-Fi сети?

Чаще всего включён режим полёта или программная блокировка rfkill, не загружена прошивка адаптера или нужен проприетарный драйвер Broadcom. Начните с команд nmcli radio wifi и rfkill list.

Как узнать, какой драйвер Wi-Fi нужен?

Выполните lspci -knn или lsusb и найдите идентификатор производителя и модели вида 8086:2725. Строка Kernel driver in use покажет, загружен ли драйвер.

Что значит Hard blocked в rfkill?

Аппаратная блокировка: адаптер выключен переключателем, клавишей Fn или в BIOS. Командой rfkill её не снять.

Как установить драйвер Wi-Fi без интернета?

Подключите телефон по USB в режиме модема или кабель Ethernet. Телефон определяется как сетевая карта без драйверов.

Почему Wi-Fi пропал после обновления ядра?

Возможна регрессия в драйвере или не пересобрался модуль DKMS. Загрузите предыдущее ядро из меню GRUB и проверьте dkms status.

Почему не видно сеть 5 ГГц?

Проверьте регуляторный домен командой iw reg get и задайте свой регион. Также убедитесь, что адаптер поддерживает выбранный на роутере канал.

Документация и источники

Читайте также

Команды проверены на актуальных версиях дистрибутивов на момент обновления. Перед изменением системных настроек сделайте резервную копию.