Установка драйвера WiFi адаптера в Ubuntu Linux

Столкнувшись с отсутствием беспроводного соединения сразу после установки операционной системы, многие пользователи Linux приходят в замешательство. Ситуация, когда кабель Ethernet под рукой отсутствует, а WiFi модуль не активируется, является классической проблемой для владельцев ноутбуков со специфическими сетевыми контроллерами. Часто это связано с тем, что проприетарные firmware для Broadcom или Realtek не включены в стандартный дистрибутив из-за лицензионных ограничений.

В отличие от Windows, где установщик автоматически подтягивает пакеты из огромного репозитория, в Ubuntu вам может потребоваться ручное вмешательство. Процесс поиска и инсталляции нужного модуля ядра требует понимания архитектуры драйверов и умения работать с терминалом. Однако, несмотря на кажущуюся сложность, алгоритм действий здесь довольно логичен и последователен.

Главное, что вам понадобится на старте — это временный доступ к глобальной сети для скачивания недостающих компонентов. Если WiFi не работает, придется использовать проводное соединение или раздать интернет с телефона через USB-кабель. Без этого шага установка специфических пакетов dkms или firmware будет невозможна, так как репозитории недоступны.

Прежде чем приступать к активным действиям, необходимо точно идентифицировать ваше оборудование. Производители ноутбуков часто используют разные модификации сетевых карт в одной и той же модели, поэтому полагаться только на название устройства нельзя. Точное знание Vendor ID и Device ID сэкономит вам часы бессмысленных поисков в интернете.

⚠️ Внимание: Интерфейсы графических утилит управления драйверами могут меняться в зависимости от версии дистрибутива Ubuntu и используемого окружения рабочего стола (GNOME, KDE, XFCE). Если вы не нашли описанный пункт в меню, используйте терминал, так как он является универсальным инструментом для всех сборок.

Для первичной диагностики запустите терминал и введите команду для вывода списка PCI устройств. Это позволит увидеть, как система видит ваш сетевой адаптер, даже если драйвер для него не загружен.

lspci -nnk | grep -i net -A2

Если ваш адаптер подключен через шину USB (что часто бывает с внешними свистками или внутренними модулями в некоторых ноутбуках), используйте команду lsusb. В выводе вы увидите строки с идентификаторами, например 0bda:b812 для Realtek. Эти цифры критически важны для дальнейшего поиска.

Альтернативный способ получить детальную информацию — использование утилиты inxi, которая агрегирует данные о системе в удобном виде. Она покажет не только модель, но и статус драйвера, который в данный момент управляет устройством или пытается это сделать.

inxi -N

В полученном отчете обратите внимание на поле driver. Если там указано N/A или unloaded, значит, операционная система не знает, как работать с этим железом. Именно на этом этапе начинается процесс ручной установки недостающих компонентов.

📊 Какой у вас сетевой адаптер?
Broadcom
Realtek
Intel
Atheros
Не знаю, нужно смотреть lspci

Самый простой и безопасный путь решения проблемы — использование встроенного механизма поиска дополнительных драйверов. Ubuntu обладает обширной базой проприетарных и свободных драйверов, которые можно активировать в пару кликов, если базовое соединение с интернетом уже налажено.

Откройте меню приложений и найдите утилиту «Программы и обновления» (Software & Updates). Перейдите на вкладку Дополнительные драйверы (Additional Drivers). Система проведет сканирование оборудования и предложит доступные варианты прошивок.

  • 📡 Broadcom STA — часто требуется для старых и некоторых новых моделей ноутбуков HP и Dell с чипами серии 43xx.
  • 🔌 Realtek RTL — для многих USB-адаптеров система может предложить драйвер rtl88xxau-dkms.
  • 📶 Firmware — иногда предлагается просто пакет микрокода без привязки к конкретному вендору.

Выберите рекомендованный вариант (помечен как recommended) и нажмите кнопку «Применить изменения». Система скачает необходимые пакеты, скомпилирует модули ядра при помощи DKMS и предложит перезагрузиться. После рестарта WiFi должен появиться в списке доступных сетей.

В случаях, когда графический интерфейс не помог или нужный драйвер отсутствует в списке, приходится прибегать к ручной установке через менеджер пакетов apt. Этот метод требует точного названия пакета, которое часто содержит название чипсета.

Для популярных чипов Broadcom, таких как BCM4311, BCM4312, BCM4313, BCM4321, BCM4322, BCM43224, BCM43225, BCM43227 и BCM43228, обычно достаточно установить пакет bcmwl-kernel-source. Убедитесь, что у вас подключен интернет, и выполните команду:

sudo apt update

sudo apt install bcmwl-kernel-source

Для устройств Realtek ситуация сложнее, так как поддержка разных моделей разнесена по разным пакетам. Например, для чипов RTL8821CE часто требуется пакет rtl8821ce-dkms, а для новых стандартов WiFi 6 могут понадобиться пакеты из сторонних репозиториев или сборка из исходников.

⚠️ Внимание: При установке драйверов через apt всегда проверяйте, не конфликтует ли новый пакет с уже установленными модулями. Одновременная активация нескольких драйверов для одного устройства может привести к нестабильной работе сети или полному отказу модуля.

Часто бывает так, что драйвер в репозиториях существует, но он не загружается автоматически из-за конфликта модулей безопасности Secure Boot. Эта функция BIOS/UEFI запрещает загрузку модулей ядра, не имеющих цифровой подписи, что блокирует многие сторонние драйверы WiFi.

Проверить статус Secure Boot можно командой mokutil --sb-state. Если она возвращает «SecureBoot enabled», вам нужно либо подписать модуль ключом MOK (Machine Owner Key), что является сложной процедурой, либо отключить Secure Boot в BIOS.

  • 🔒 Перезагрузите компьютер и войдите в BIOS/UEFI (обычно клавиши F2, F10, Del).
  • 🔍 Найдите раздел Boot или Security.
  • ❌ Переключите опцию Secure Boot в положение Disabled.
  • 💾 Сохраните настройки (Save & Exit) и загрузите Ubuntu.

После отключения этой функции ядро Linux получит разрешение на загрузку проприетарных модулей, и ваш WiFi адаптер должен заработать. Это наиболее частая причина, почему «все установлено, но не работает».

Что делать, если Secure Boot нельзя отключить?

В корпоративной среде или на некоторых ноутбуках доступ к BIOS может быть заблокирован паролем. В таком случае необходимо использовать утилиту mokutil для создания ключа подписи. После установки драйвера при перезагрузке появится синий экран MOK Manager, где нужно будет выбрать Enroll MOK и ввести пароль, который вы зададите командой.

Если готовые пакеты не подходят, остается вариант ручной компиляции из исходного кода. Этот метод универсален, но требует наличия инструментов сборки (build-essential, linux-headers) и стабильного интернета.

Сначала необходимо скачать архив с кодом драйвера с официального сайта производителя или репозитория GitHub. Распакуйте архив, перейдите в папку и следуйте инструкции в файле README. Обычно процесс выглядит как стандартная цепочка команд для компиляции ПО в Linux.

sudo apt install build-essential linux-headers-$(uname -r) git

git clone https://github.com/тор/репозиторий/драйвера.git

cd папка_драйвера

make

sudo make install

sudo modprobe имя_модуля

Использование git позволяет легко обновлять драйвер, если выйдет новая версия, просто повторив команду pull в папке проекта. Однако помните, что при обновлении ядра Linux вам, возможно, придется компилировать драйвер заново, если он не интегрирован через DKMS.

Ниже приведена таблица соответствия популярных чипсетов и пакетов, которые чаще всего требуются для их работы в Ubuntu. Используйте её как справочник при поиске решения.

Производитель чипа Серия/Модель Пакет в репозитории Статус поддержки
Broadcom BCM43xx (многие модели) bcmwl-kernel-source Проприетарный, стабильный
Realtek RTL8821CE rtl8821ce-dkms Свободный, требует DKMS
Intel Wi-Fi 6 (AX200/AX210) firmware-iwlwifi Встроен в ядро, нужен firmware
Atheros AR9xxx firmware-atheros Полная поддержка в ядре

Для устройств Intel часто не нужно ставить отдельные драйверы, так как они вшиты в ядро. Проблема обычно решается установкой пакета firmware-iwlwifi и перезагрузкой. Команда dmesg | grep iwlwifi поможет увидеть ошибки загрузки, если они возникнут.

☑️ Диагностика проблемы WiFi

Выполнено: 0 / 4

После установки драйвера и перезагрузки может оказаться, что сеть появилась, но работает нестабильно или постоянно отключается. В таком случае стоит проверить настройки энергосбережения, которые могут агрессивно отключать WiFi модуль.

Создайте файл конфигурации для NetworkManager, чтобы запретить отключение питания адаптера. Это часто решает проблему «мигающего» соединения на ноутбуках с батареями.

sudo nano /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf

Измените значение wifi.powersave на 2 (что означает отключение энергосбережения) и сохраните файл. Перезапустите службу сети командой sudo systemctl restart NetworkManager.

⚠️ Внимание: Отключение энергосбережения WiFi модуля может незначительно увеличить расход заряда батареи ноутбука. Если автономность критична, верните значение по умолчанию (3) после тестирования стабильности соединения.

Также стоит убедиться, что в BIOS не отключен сам беспроводной модуль на уровне железа. Иногда помогает сброс настроек BIOS до заводских (Load Defaults), если программные методы не дают результата.

В процессе настройки вы можете столкнуться с ситуацией, когда драйвер вроде бы загружен, но интерфейс сети не поднимается. Проверьте вывод команды ip link. Если интерфейс присутствует (например, wlo1), но находится в состоянии DOWN, попробуйте поднять его вручную:

sudo ip link set wlo1 up

Если же интерфейс вообще не отображается в списке, значит, модуль ядра не загрузился. Проверьте список загруженных модулей командой lsmod | grep имя_драйвера. Отсутствие результата укажет на то, что нужно проверить логи dmesg на наличие ошибок при загрузке модуля.

Частой ошибкой является наличие «черного списка» (blacklist) для конфликтующих драйверов. Файлы blacklist находятся в /etc/modprobe.d/. Если вы видите там строки, запрещающие загрузку нужного вам модуля, их нужно закомментировать или удалить.

Как найти конфликтующий драйвер?

Запустите команду lsmod и посмотрите, какие модули связаны с wifi. Если их несколько (например, open-source и проприетарный), один из них нужно заблокировать. Часто помогает временное удаление модуля командой sudo modprobe -r имя_модуля перед загрузкой правильного.

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

В таких случаях рассмотрите возможность установки более свежего ядра через пакет mainline или использования версии Ubuntu с более новым стеком драйверов. Это часто является единственным способом заставить работать новейшие адаптеры WiFi 6E или WiFi 7.

Почему Ubuntu не видит мой WiFi адаптер после установки?

Скорее всего, в системе отсутствует проприетарная микропрограмма (firmware) для вашего чипсета. Это характерно для Broadcom и некоторых Realtek. Вам нужно подключиться к интернету через кабель или USB-модем и установить пакет с драйверами через «Дополнительные драйверы» или apt.

Нужно ли отключать Secure Boot для установки драйверов?

Да, в большинстве случаев это необходимо. Secure Boot блокирует загрузку модулей ядра, не имеющих цифровой подписи Microsoft. Сторонние драйверы WiFi часто не подписаны, поэтому система отказывается их загружать в целях безопасности.

Как узнать, какой именно драйвер нужен моему адаптеру?

Используйте команду lspci -nnk | grep -i net -A2 для внутренних карт или lsusb для внешних. Найдите в интернете модель чипа (например, BCM43142) вместе со словом «Ubuntu driver», чтобы найти точное название пакета.

Можно ли установить драйвер WiFi без интернета на Ubuntu?

Да, но это сложнее. Вам потребуется скачать .deb пакеты драйверов и все их зависимости на другом компьютере с интернетом, перекинуть их на флешку и установить вручную через dpkg -i. Проще всего раздать интернет со смартфона через USB-кабель (режим USB-модема), который определяется как проводная сеть.

Что делать, если после обновления ядра WiFi перестал работать?

При обновлении ядра модули DKMS должны пересобираться автоматически. Если этого не произошло, попробуйте выполнить sudo dkms autoinstall. Если проблема сохраняется, возможно, новое ядро еще не имеет полной поддержки вашего оборудования, и стоит загрузиться со старого ядра через меню GRUB.