Ситуация, когда после установки операционной системы Ubuntu вы обнаруживаете отсутствие значка беспроводной сети, является одной из самых распространенных и раздражающих проблем для новичков в Linux. В отличие от Windows, где производители оборудования часто поставляют драйверы на дисках или они встраиваются производителем материнской платы, в мире открытого ПО ситуация с поддержкой "железа" может быть сложнее. Часто причиной становится отсутствие проприетарных (закрытых) модулей, которые не могут распространяться вместе с дистрибутивом по лицензионным соображениям.
Однако паниковать рано: в большинстве случаев адаптер физически исправен, и система его определяет, но просто не может запустить без дополнительного программного кода. NetworkManager, стандартный инструмент управления сетью, просто не получает корректных данных от ядра системы о состоянии устройства. Вам потребуется провести диагностику через терминал, чтобы понять, заблокирован ли адаптер программно или ему не хватает микрокода.
В этом руководстве мы детально разберем алгоритм действий, который поможет вернуть беспроводное соединение. Мы рассмотрим методы установки драйверов, работу с утилитой rfkill для снятия блокировок и ручную настройку конфигурационных файлов. Важно понимать, что решение проблемы часто зависит от конкретного чипсета вашей сетевой карты.
Диагностика оборудования через терминал
Первым шагом всегда должна стать точная идентификация устройства. Графический интерфейс может молчать, но командная строка расскажет всю правду о том, что видит система на уровне шины PCI или USB. Для начала необходимо определить модель вашего сетевого адаптера, так как от этого будет зависеть выбор драйвера.
Введите команду lspci для внутренних карт или lsusb для USB-свистков. В выводе ищите строки, содержащие слова "Wireless", "Network", "802.11" или названия производителей вроде Broadcom, Realtek, Intel, Qualcomm Atheros. Если устройство отображается здесь, значит, физический контакт есть, и проблема кроется исключительно в программном обеспечении.
Далее проверьте, видит ли ядро Linux сам сетевой интерфейс. Команда ip link show или более старая ifconfig -a покажет список всех интерфейсов. Беспроводные адаптеры обычно именуются как wlan0, wlp2s0 или подобным образом. Если интерфейс есть, но он в состоянии DOWN, его можно попробовать поднять вручную.
Ключевым моментом является проверка состояния блокировок. Утилита rfkill управляет радио-модулями. Введите команду:
rfkill list all
В ответ вы увидите список устройств с пометками "Soft blocked" (программная блокировка) и "Hard blocked" (аппаратная блокировка переключателем на корпусе). Если стоит "Hard blocked: yes", никакие команды в терминале не помогут — нужно искать физический ползунок на ноутбуке или комбинацию клавиш Fn + F-клавиша с иконкой антенны.
⚠️ Внимание: Если rfkill показывает "Soft blocked: yes", это часто происходит из-за конфликта с режимом полета в Windows при двойной загрузке (Dual Boot). Windows может "выключать" устройство перед завершением работы, и Linux наследует это состояние.
Установка проприетарных драйверов
Наиболее частая причина, по которой Ubuntu не видит WiFi, кроется в отсутствии драйверов для чипов Broadcom и некоторых моделей Realtek. К счастью, в репозиториях Ubuntu есть автоматический механизм поиска и установки таких драйверов, но для его работы... нужен интернет. Возникает замкнутый круг: интернет нужен для драйвера, а драйвер нужен для интернета.
Решить эту дилемму можно тремя способами: подключиться по кабелю Ethernet, раздать интернет с телефона через USB-модем (режим RNDIS) или скачать deb-пакеты на другом компьютере. После появления доступа в сеть откройте приложение "Программы и обновления" (Software & Updates). Перейдите на вкладку "Дополнительные драйверы" (Additional Drivers).
Система проведет сканирование и предложит доступные варианты. Для Broadcom это обычно пакет bcmwl-kernel-source, для других — специфичные модули. Выберите рекомендованный вариант и нажмите "Применить изменения". Процесс займет несколько минут, после чего потребуется перезагрузка.
Если графический интерфейс не работает или вы предпочитаете терминал, используйте менеджер пакетов apt. Сначала обновите базу данных:
sudo apt update
sudo apt install bcmwl-kernel-source
Для некоторых старых карт Broadcom может потребоваться пакет firmware-b43-installer. Важно не перепутать драйверы: установка неподходящего модуля может привести к конфликтам и полному исчезновению интерфейса. Всегда удаляйте ранее установленные неудачные драйверы перед установкой новых.
Проблемы с драйверами Realtek и ручной компиляции
Адаптеры от Realtek, особенно новые модели с поддержкой стандарта AC и AX (Wi-Fi 6), часто не имеют драйверов в стандартном ядре Linux. В таких случаях стандартные методы установки через apt не работают, и требуется ручная компиляция из исходных кодов. Это более сложный путь, требующий установки инструментов разработчика.
Сначала необходимо установить пакеты build-essential, git и заголовочные файлы ядра (linux-headers-generic). Затем нужно найти репозиторий с драйвером для вашего чипсета (например, rtl8812au, rtl8821ce) на GitHub. Процесс обычно выглядит как клонирование репозитория, создание директории модуля и запуск скрипта установки.
Примерная последовательность действий для популярного чипа rtl8821ce:
sudo apt install git dkms build-essential
git clone https://github.com/tomaspinho/rtl8821ce.git
cd rtl8821ce
chmod +x dkms-install.sh
sudo ./dkms-install.sh
После завершения скрипта модуль будет собран специально для вашей версии ядра и зарегистрирован в системе. При обновлении ядра Linux (что происходит регулярно в Ubuntu) этот драйвер может "слететь", и процедуру придется повторить, либо использовать DKMS для автоматической пересборки.
| Чипсет | Типичный пакет/драйвер | Сложность установки | Стабильность |
|---|---|---|---|
| Intel (серии 7260, 8260, AX200) | Встроен в ядро (iwlwifi) | Низкая (работает из коробки) | Высокая |
| Broadcom (BCM43xx) | bcmwl-kernel-source | Низкая (через "Доп. драйверы") | Средняя/Высокая |
| Realtek (RTL88xx) | Ручная компиляция (DKMS) | Высокая (нужен терминал) | Зависит от версии |
| Atheros | ath9k / ath10k | Низкая | Очень высокая |
Что такое DKMS и зачем он нужен?
Dynamic Kernel Module Support (DKMS) — это фреймворк, который позволяет автоматически пересобирать сторонние модули ядра (драйверы) при обновлении самой операционной системы. Без DKMS вам пришлось бы вручную компилировать драйвер WiFi после каждого обновления ядра Ubuntu.
Управление конфигурацией NetworkManager
Даже при установленных драйверах могут возникать конфликты конфигурации. В Ubuntu за сетевые соединения отвечает служба NetworkManager. Иногда она "зависает" или сохраняет некорректные настройки, особенно если вы часто переключаетесь между разными сетями или используете виртуальные машины.
Проверить статус службы можно командой systemctl status NetworkManager. Если служба не активна, запустите её через sudo systemctl start NetworkManager. Для полного сброса сетевых настроек можно удалить файлы конфигурации соединений (но будьте осторожны, это удалит сохраненные пароли WiFi):
sudo rm /etc/NetworkManager/system-connections/*
Также стоит обратить внимание на файл конфигурации /etc/NetworkManager/NetworkManager.conf. В некоторых случаях добавление строки managed=true в секцию [ifupdown] помогает системе взять управление интерфейсом на себя, если он ранее управлялся другим сервисом.
Еще одной частой проблемой является агрессивное энергосбережение. Linux может пытаться экономить энергию, отключая WiFi-адаптер, что приводит к разрывам соединения или невозможности подключиться. Отключить это можно, создав файл конфигурации:
sudo nano /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf
Измените значение wifi.powersave на 2 (что означает отключение энергосбережения). Это часто решает проблему нестабильного сигнала.
⚠️ Внимание: Интерфейсы настройки NetworkManager могут отличаться в зависимости от версии Ubuntu и используемого графического окружения (GNOME, KDE, XFCE). В новых версиях настройки могут быть скрыты глубже в меню.
Конфликты ядер и обновление системы
Иногда проблема кроется не в отсутствующем драйвере, а в том, что текущее ядро Linux (kernel) имеет баг или несовместимо с вашим оборудованием. Это часто случается сразу после крупного обновления системы, когда устанавливается новая версия ядра, а драйверы еще не оптимизированы.
В этом случае помогает откат к предыдущей версии. При загрузке компьютера зажмите клавишу Shift (или Esc), чтобы вызвать меню загрузчика GRUB. Выберите пункт "Advanced options for Ubuntu" и загрузитесь с ядром, помеченным как "(recovery mode)" или просто более старой версии.
Если в старой версии WiFi работает, значит, проблема именно в новом ядре. Вы можете либо временно остаться на старой версии, либо попробовать обновить систему полностью, так как патчи для драйверов часто приходят с запозданием. Команда sudo apt full-upgrade может решить проблему, подтянув необходимые исправления.
Также стоит проверить логи системы на предмет ошибок, связанных с firmware. Команда dmesg | grep firmware покажет, какие именно файлы микрокода не удалось загрузить. Это дает точное название файла, который нужно найти и положить в директорию /lib/firmware.
☑️ Чек-лист диагностики ядра
☑️ Проверить работу WiFi на старом ядре через GRUB
Специфика ноутбуков и двойная загрузка
Владельцы ноутбуков часто сталкиваются с уникальными проблемами, связанными с управлением питанием и аппаратными переключателями. Как упоминалось ранее, Windows в режиме быстрой загрузки (Fast Startup) не выключает компьютер полностью, а переводит его в гибернацию, блокируя оборудование. Это частая причина, почему Ubuntu "не видит" WiFi после перезагрузки из Windows.
Для решения проблемы необходимо отключить Fast Startup в Windows. Зайдите в "Панель управления" -> "Электропитание" -> "Действие кнопок питания" и снимите галочку с пункта "Включить быстрый запуск". После этого выполните полное выключение (не перезагрузку) и включите компьютер.
Кроме того, на некоторых ноутбуках (например, HP, Lenovo) требуется ввод специальных команд в BIOS/UEFI для активации беспроводного модуля, если он был заблокирован на уровне firmware. Также проверьте, не включен ли режим полета на уровне BIOS.
Если ничего не помогает, можно попробовать вручную разблокировать устройство через терминал командой sudo rfkill unblock all. В редких случаях помогает физическое извлечение батареи (если она съемная) на 10-15 секунд для сброса статического заряда и состояния контроллера.
Почему после обновления Ubuntu пропал WiFi?
Обновление часто включает новую версию ядра Linux. Драйверы, особенно проприетарные или собранные вручную (DKMS), могут не успеть обновиться или сконфигурироваться под новое ядро автоматически. Решение: загрузиться в старое ядро через GRUB и запустить sudo apt update && sudo apt upgrade, чтобы доустановить недостающие модули.
Как узнать точную модель WiFi адаптера без интернета?
Используйте команду lspci -nn (для внутренних карт) или lsusb (для USB). Найдите строку с "Network controller" или "Wireless". Код_VENDOR и код_DEVICE (например, [14e4:4365]) можно ввести в поисковик на телефоне, чтобы узнать точное название чипсета и необходимый драйвер.
Можно ли использовать WiFi адаптер на USB как временное решение?
Да, но с осторожностью. Дешевые адаптеры на чипах Realtek часто требуют ручной установки драйверов, что сложно без интернета. Лучше искать адаптеры на чипах Atheros или те, что помечены как "Compatible with Linux" (работают из коробки). Однако, если у вас есть возможность раздать интернет с телефона по USB, это будет более стабильным временным решением для установки драйверов основного адаптера.