Переход на операционную систему Linux часто омрачается одной из самых распространенных проблем — отсутствием беспроводного соединения сразу после установки. Пользователь сталкивается с ситуацией, когда Ubuntu загрузилась, интерфейс встречает приветствием, но значок Wi-Fi в правом верхнем углу либо отсутствует вовсе, либо показывает, что сеть выключена. Это классическая ситуация, вызванная тем, что дистрибутив не содержит проприетарных драйверов для вашего конкретного сетевого адаптера из-за лицензионных ограничений.
В отличие от Windows, где производители оборудования часто поставляют установочные диски или заранее интегрируют ПО в систему, в мире открытого исходного кода поддержка железа зависит от сообщества и готовности вендоров предоставлять спецификации. Часто сетевая карта просто не определяется ядром без дополнительной микрокодовой прошивки, которую необходимо загружать отдельно. Паниковать в такой ситуации не стоит, так как в 99% случаев проблема решаема программными методами.
Для начала диагностики вам потребуется временное подключение к интернету через Ethernet кабель или раздача сети с Android-смартфона через USB. Без доступа к репозиториям пакетов установить недостающие компоненты будет крайне сложно. Ниже мы подробно разберем алгоритмы действий для различных сценариев, от простых переключений в BIOS до ручной компиляции модулей ядра.
Диагностика оборудования и определение модели адаптера
Прежде чем искать решение, необходимо точно понять, с каким железом мы имеем дело. Разные производители чипсетов требуют принципиально разных подходов к установке драйверов. Самый надежный способ получить информацию — использование терминала. Откройте его сочетанием клавиш Ctrl+Alt+T и введите команду для просмотра списка PCI-устройств.
Команда lspci покажет все устройства, подключенные по шине PCI, включая внутренние сетевые карты. Если у вас USB-адаптер, используйте команду lsusb. В выводе ищите строки, содержащие слова Network controller, Wireless, или названия брендов вроде Broadcom, Realtek, Intel, Qualcomm Atheros. Запишите идентификатор устройства, он выглядит как 8086:3165 или similar.
Также полезно проверить, видит ли система вообще наличие беспроводного интерфейса, даже если драйвер не загружен. Команда lshw -C network выведет подробную конфигурацию. Обратите внимание на строку configuration: если там указано driver= (пусто), значит, драйвер действительно отсутствует. Если же указано driver=iwlwifi или аналогичное, но сеть не работает, проблема может быть в настройках или блокировке.
Базовые проверки: режим полета и блокировки rfkill
Иногда проблема кроется не в отсутствии драйверов, а в программной блокировке интерфейса. В Linux существует утилита rfkill, которая управляет состоянием беспроводных устройств. Она может блокировать Wi-Fi на уровне ядра, игнорируя попытки включения через графический интерфейс.
Выполните команду rfkill list all. Вы увидите список устройств с их статусом. Нас интересуют поля Soft blocked и Hard blocked. Если Soft blocked имеет значение yes, это программная блокировка, которую можно снять командой sudo rfkill unblock wifi. Это частая причина, почему после обновления системы или некорректного завершения работы сеть перестает включаться.
Ситуация с Hard blocked сложнее. Это указывает на физический переключатель на корпусе ноутбука или комбинацию клавиш (например, Fn+F2). Также "жесткая" блокировка может возникать из-за настроек BIOS/UEFI, где беспроводной модуль может быть отключен глобально. Проверьте настройки BIOS, найдите раздел Wireless или Onboard Devices и убедитесь, что WLAN Controller включен.
⚠️ Внимание: Если Hard blocked горит постоянно, даже после перезагрузки и проверки клавиш, попробуйте полностью обесточить ноутбук (вынуть батарею, если она съемная, или отключить питание и зажать кнопку включения на 15 секунд). Это сбросит состояние контроллера питания.
Установка драйверов Broadcom и Realtek через Additional Drivers
Наиболее простой путь решения проблемы для владельцев популярных, но требовательных к проприетарному ПО чипов — использование встроенного инструмента Ubuntu. Система сама сканирует оборудование и предлагает установить нужные драйверы, если имеет доступ к интернету. Этот метод идеален для устройств Broadcom и некоторых моделей Realtek.
Откройте приложение "Программы и обновления" (Software & Updates) через меню приложений или найдите его в поиске Dash. Перейдите на вкладку Дополнительные драйверы (Additional Drivers). Система проведет поиск и, если найдет подходящее закрытое ПО, предложит его активировать. Вам нужно выбрать пункт с пометкой "using ... (proprietary)" и нажать "Применить изменения".
После завершения установки и загрузки модулей обязательно перезагрузите компьютер. Часто драйверы Broadcom STA (bcmwl-kernel-source) требуют перезагрузки для корректной инициализации. Если в списке ничего не нашлось, но вы точно знаете модель адаптера, придется прибегнуть к ручной установке через терминал.
☑️ Алгоритм установки драйверов
Ручная установка драйверов для Realtek и Intel
Для современных адаптеров Realtek (особенно серии RTL8821CE, RTL8822BE) стандартные репозитории Ubuntu могут не содержать актуальных драйверов, так как они появляются в ядре Linux с задержкой. В таких случаях приходится использовать DKMS (Dynamic Kernel Module Support) для компиляции модуля под текущую версию ядра.
Сначала необходимо установить инструменты сборки. Выполните команду: sudo apt update && sudo apt install build-essential git dkms. Далее нужно найти репозиторий с драйвером на GitHub. Например, для многих чипов Realtek актуален драйвер от lwfinger. Клонируйте репозиторий, перейдите в папку и запустите установку.
git clone https://github.com/lwfinger/rtw88.git
cd rtw88
make
sudo make install
Для устройств Intel ситуация обычно проще: поддержка встроена в ядро (iwlwifi). Если Wi-Fi не работает, часто требуется обновить саму firmware. Пакет linux-firmware содержит бинарные файлы для работы оборудования. Его обновление командой sudo apt install --reinstall linux-firmware часто решает проблему с новыми картами Intel AX200/AX210.
Что делать, если компиляция драйвера завершилась ошибкой?
Если при выполнении команды make вы видите ошибки, скорее всего, у вас не установлены заголовочные файлы ядра. Выполните команду sudo apt install linux-headers-$(uname -r) и повторите попытку. Также проверьте версию ядра: на слишком новых или слишком старых версиях код драйвера может требовать правки.
Проблемы с режимом энергосбережения и модулем ядра
Одной из скрытых причин нестабильной работы или полного отказа Wi-Fi является агрессивная политика энергосбережения. Драйвер может пытаться "уснуть" и не просыпаться корректно, что приводит к разрыву соединения. Это особенно актуально для ноутбуков на батареях.
Чтобы отключить энергосбережение для модуля iwlwifi (Intel), создайте конфигурационный файл. В терминале введите: sudo nano /etc/modprobe.d/iwlwifi.conf. Добавьте туда строку options iwlwifi 11n_disable=1 power_save=0. Сохраните файл (Ctrl+O) и выйдите (Ctrl+X).
Также стоит проверить общий статус управления питанием. Иногда помогает полное отключение режима для конкретного интерфейса через iwconfig. Команда sudo iwconfig wlan0 power off (замените wlan0 на имя вашего интерфейса) принудительно переводит карту в активный режим. Для постоянного применения создайте скрипт в /etc/network/if-up.d/.
| Параметр модуля | Значение | Описание эффекта |
|---|---|---|
| 11n_disable=1 | 0 или 1 | Отключает режим 802.11n (помогает при нестабильности) |
| power_save=0 | 0 (выкл) или 1 (вкл) | Управляет энергосбережением адаптера |
| swcrypto=1 | 0 или 1 | Использовать программное шифрование (редко, для старых карт) |
| bt_coex_active=0 | 0 или 1 | Отключает взаимодействие с Bluetooth (снижает помехи) |
Настройка NetworkManager и сброс конфигурации
Если драйверы установлены, но соединения нет, возможно, сбилась конфигурация сетевого менеджера. NetworkManager — это демон, управляющий сетевыми подключениями в Ubuntu. Его настройки могут конфликтовать после обновлений или смены оборудования.
Попробуйте перезапустить службу: sudo systemctl restart NetworkManager. Если это не помогло, можно удалить сохраненные конфигурации подключений (не забудьте пароли!). Файлы хранятся в /etc/NetworkManager/system-connections/. Удаление проблемного файла заставит систему запросить данные заново.
В графическом интерфейсе также стоит проверить настройки IPv4. Иногда автоматическое получение адреса (DHCP) работает некорректно с определенными роутерами. Попробуйте временно прописать статический IP-адрес или изменить DNS-серверы на публичные (например, 8.8.8.8 от Google), чтобы исключить проблемы с разрешением имен.
Часто задаваемые вопросы (FAQ)
Почему Wi-Fi работает на Windows, но не работает на Ubuntu на том же ноутбуке?
Это связано с тем, что в Windows уже установлены проприетарные драйверы от производителя, которые идут в комплекте с ОС или устанавливаются через Центр обновлений Microsoft. В Linux эти драйверы часто закрыты, и сообществу требуется время для создания совместимых модулей или внедрения их в ядро.
Как узнать, заблокирован ли Wi-Fi в BIOS?
При загрузке компьютера нажмите F2, F10 или Del (зависит от модели) для входа в BIOS/UEFI. Ищите разделы Advanced, Configuration или Security. Найдите пункт Wireless, WLAN Device или Network Adapter и убедитесь, что он стоит в положении Enabled.
Можно ли установить драйвер Wi-Fi без интернета на Ubuntu?
Да, но это сложнее. Вам потребуется скачать deb-пакеты драйверов и все их зависимости на другом компьютере, перекинуть их на флешку и установить вручную через sudo dpkg -i package.deb. Проще всего раздать интернет со смартфона по USB, так как Android-драйверы обычно встроены в ядро Ubuntu.
Что такое модуль ядра и почему его нужно компилировать?
Модуль ядра — это часть кода операционной системы, которая управляет конкретным устройством. Компиляция нужна, когда готового бинарного файла нет в репозиториях, и его нужно собрать из исходного кода специально под вашу версию ядра Linux, чтобы обеспечить совместимость инструкций процессора и функций системы.
⚠️ Внимание: При ручной установке драйверов из сторонних репозиториев (PPA) или с GitHub всегда проверяйте дату последнего обновления кода. Если репозиторий не обновлялся более 2-3 лет, он может быть несовместим с современным ядром Ubuntu 22.04/24.04 и привести к ошибкам загрузки системы.