Записки IT специалиста
С поддержкой W-Fi адаптеров в Ubuntu наблюдаются определенные проблемы. Хорошо если можно выбрать заведомо совместимую модель при покупке, но чаще приходится использовать то оборудование, которое есть. В этом случае придется устанавливать адаптер самостоятельно. Сегодня мы рассмотрим как раз такой случай.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Забегая вперед, скажем, что ничего сложного в подключении неподдерживаемых Wi-Fi адаптеров нет. Несмотря на то, что ряд производимых нами действий можно выполнить при помощи графического интерфейса, мы будем работать исключительно в консоли, что позволит использовать рекомендации данной статьи как для настольных, так и для серверных версий Ubuntu.
Для примера рассмотрим подключение в Ubuntu 12.04 LTS недорогого USB-адаптера TP-Link TL-WN725N.
Как это обычно бывает, вы купили Wi-Fi адаптер, распаковали, подключили. И никаких признаков жизни. Становится очевидно, что данная модель не поддерживается используемым дистрибутивом. Что делать?
Прежде всего убедимся, что система видит само USB-устройство. Для этого выполним команду
В выводе вы должны увидеть строку, соответсвующую подключенному устройству, скорее всего она будет содержать информацию о чипе, на котором собран адаптер. В нашем случае это Realtek. Если вы не уверены, что адаптер присутсвует в списке, выполните команду два раза, с подключенным и отключенным устройством.
Следующим шагом вам нужно выяснить модель чипа, на котором собран адаптер. Для этого уточните его полную маркировку и аппаратную версию, так как под одним и тем же наименованием могут выпускаться устройства на разных чипах. Вся необходимая информация указана на этикетке, также она может быть продублирована на самом устройстве.
Как видим перед нами устройство с аппаратной версией Ver:2.0, располагая этой информацией несложно выяснить что в основу адаптера положен чип Realtek RTL8188EUS. Мы советуем воспользоваться ресурсом wikidevi.com (по ссылке настроеный пример семантического поиска по бренду TP-Link), перейдя на страницу адаптера мы не только узнаем его чип, но и получим ссылку на Linux драйвера.
Перейдем в домашнюю директорию и скачаем архив репозитория, предварительно повысив права до суперпользователя:
sudo -s
cd ~
wget "https://github.com/lwfinger/rtl8188eu/archive/master.zip"
Распакуем архив (при необходимости установив unzip).
Как можно увидеть из вывода команды, содержимое архива распаковалось в директорию rtl8188eu-master, перейдем в нее и выполним сборку модуля:
После сборки модуля в директории должен появиться файл 8188eu.ko, это и есть искомый модуль ядра. Теперь установим его командой:
Осталось включить наш модуль, выполнив команду:
или просто отключить и подключить заново адаптер. В настольной системе вы сразу увидите сообщение о возможности подключиться к беспроводной сети.
Или выполните в консоли команду:
В выводе вы увидите появившийся беспроводной интерфейс wlan0.
Как видим ничего сложного нет. Однако следует помнить, что модуль собирается и устанавливается под текущую версию ядра, и при его обновлении будет необходимо выполнить сборку и установку модуля заново. Если такой возможности нет, то следует, удерживая Shift при загрузке, выбрать и загрузить версию ядра, для которой собран модуль.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Установка драйвера USB WiFi адаптера в Linux (на примере DEXP WFA-601)
В связи с переездом и нежеланием захламлять дом проводами повесил в прихожей роутер, а для компьютера купил Wi-Fi адаптер DEXP WFA-601.
Пока работал в Windows 10 проблем не было. Однако сгоревший жесткий диск подтолкнул меня к установке Linux (конкретно Kubuntu).
Путь веры
Захожу на официальный сайт производителя и скачиваю драйвер для любой ОС. Результат предсказуем: Linux != «любая ОС».
Роюсь в коробочках и нахожу родной CD-диск от адаптера. Скачиваю драйвер, нахожу «install.sh»:
$ chmod a+x install.sh $ sudo ./install.sh
Драйвер не компилируется, вылетает с ошибкой.
cc1: error: code model kernel does not support PIC mode
Не буду тратить время на описание, боя с ней. В гугле нашел советы персобирать ядро, пересобирать gcc… В общем мой уровень не позволяет такие сложности.
Путь разума
Первым делом решил проверить видит ли железку ядро. Вытаскиваю адаптер и втыкаю его в соседний разъем.
. [ 1498.558445] usb 1-1.1: new high-speed USB device number 6 using ehci-pci [ 1498.667540] usb 1-1.1: New USB device found, idVendor=0bda, idProduct=a811 [ 1498.667544] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 1498.667546] usb 1-1.1: Product: 802.11ac WLAN Adapter [ 1498.667548] usb 1-1.1: Manufacturer: Realtek [ 1498.667550] usb 1-1.1: SerialNumber: 00e04c000001
Ищу название драйвера на лазерном диске от производителя, вот оно: RTL8821AU_Linux_v5.2.6.3_25025_COEX20171103-6c6d.20171106.
Подключаю смартфон в режиме модема и пробую в лоб:
sk@ds:~$ sudo apt install realtek-88xxau-dkms [sudo] password fоr sk: Чтение списков пакетов… Готово Построение дерева зависимостей Чтение информации о состоянии… Готово E: Невозможно найти пакет realtek-88xxau-dkms
Видимо репозиторий моего дистрибутива к такому не готов. Захожу на гитхаб и качаю исправленную версию драйвера.
Распаковываю, нахожу dkms-install.sh, запускаю его. Драйвер установлен.
Не будучи гуру linux не стал разбираться с остановкой и запуском адаптера, ввел:
Вай фай адаптер драйвер линукс
Установка драйвера для Wi-Fi адаптера от Realtek под Linux может стать небольшой проблемой. Есть несколько версий драйверов на github, но не все подходят для ядра линукс версий 5.+ . Здесь покажу рабочий вариант
У меня USB адаптер, и вот так он выглядит в lsusb. ID: 0bda:c811
Bus 001 Device 003: ID 0bda:c811 Realtek Semiconductor Corp. 802.11ac NIC
Установка
Вот этот драйвер подойдет к адаптерам на базе RTL8811CU RTL8821CU RTL8731AU, и к Linux kernel версий 4.19-6.1: https://github.com/morrownr/8821cu-20210916
Устанавливаю на Ubuntu 22.10:
sudo apt update && sudo apt install build-essential git dkms bc git clone https://github.com/morrownr/8821cu-20210916.git cd 8821cu-20210916 sudo ./install-driver.sh
Если все прошло успешно, скрипт спросит “Do you want to edit the driver options file now?” — отказываемся. На предложение перезагрузки соглашаемся 🙂
После ребута получаем рабочий Wi-Fi адаптер: