Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам > Linux для начинающих

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 14.11.2017, 13:00   #1
Dioptimizer
Senior Member
 
Регистрация: 17.02.2013
Адрес: Харьков
Сообщений: 235
Вес репутации: 689
Dioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond repute
По умолчанию ath9k: Нестандартные каналы для стримминга или линка (Часть 2)

Это вторая часть и продолжение этой темы.
Есть два варианта разблокировать частоты в системе Ubuntu, т.е. два варианта компилирования драйверов ath9k.

Первым, расскажу самый легкий, это установка backports драйверов.
Итак, нам потребуется установить в Ubuntu:
Код:
sudo apt-get update
sudo apt-get -y install build-essential linux-headers-`uname -r` -r libncurses5-dev
(gcc я так подозреваю, у вас уже установлен по умолчанию)
Далее берем и качаем последнюю на данным момент версию backports:
Код:
wget wget https://mirrors.edge.kernel.org/pub/linux/kernel/projects/backports/stable/v4.19-rc5/backports-4.19-rc5-1.tar.xz
tar xf backports-4.19-rc5-1.tar.xz
cd backports-4.19-rc5-1
Потом накатываем патч: копируем его (без расширения txt) в папку backports и выполняем команду:
Код:
patch -u -p1 < backport_all.patch
Следующий шаг, перед компиляцией создаем конфиг. файл для ath9k драйверов после чего можно выполнить команду make:
Код:
make defconfig-ath9k
make
Или как уже сказал пользователь zabses:
Если Вам помимо ath9k-драйверов, нужны еще какие нибудь(например у Вас несколько WiFi-адаптеров на разных чипах), то вместо параметра "make defconfig-ath9k" нужно использовать параметр "make defconfig-wifi".

Дальше, когда оно все собрало без ошибок, останавливаем все что может использовать наши драйвера, которые сейчас есть в системе:
Код:
sudo service network-manager stop
sudo modprobe -r ath9k
sudo modprobe -r mac80211 cfg80211
(нужны права root для остановки служб и извлечения модулей, также если у вас установлены еще какие нибудь драйвера, которые могут заменить новый backports, то и их следует выгрузить)

Устанавливаем драйвера командой:
Код:
sudo make install
(нужны права root для установки драйверов)

И все заново запускаем(чтобы не перезагружать компьютер):
Код:
sudo modprobe -v -a cfg80211 mac80211
sudo modprobe -v -a ath ath9k_hw ath9k_common ath9k_htc
sudo service network-manager start
Смотрим "iw list" команду, должны быть доступны новые частоты, но они будут заблокированы regdomain.

Следующий шаг, это разблокировать их.
Вложения
Тип файла: txt backport_all.patch.txt (7.9 Кб, 337 просмотров)

Последний раз редактировалось Dioptimizer; 28.09.2018 в 13:55.
Dioptimizer вне форума   Ответить с цитированием
Старый 20.11.2017, 19:44   #2
Dioptimizer
Senior Member
 
Регистрация: 17.02.2013
Адрес: Харьков
Сообщений: 235
Вес репутации: 689
Dioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond reputeDioptimizer has a reputation beyond repute
По умолчанию

Теперь разблокируем каналы в regdomain, благо, его можно переустанавливать.

Устанавливаем необходимую зависимость(~300kb):
Код:
sudo apt-get update
sudo apt-get install python-m2crypto
(Исходим из того, что пакеты crda, python2 должны быть уже установлены по умолчанию, также могут потребоваться пакеты python-future и python-attr если они не входят в пакет python-m2crypto)

Качаем и разархивируем последнюю версию(всего 20kb):
Код:
wget https://mirrors.edge.kernel.org/pub/software/network/wireless-regdb/wireless-regdb-2018.09.07.tar.xz
tar xf wireless-regdb-2018.09.07
cd wireless-regdb-2018.09.07
Заменяем строку "#!/usr/bin/env python" >на> "#!/usr/bin/python2" в файле db2bin.py(в некоторых случаях это не обязательно, просто у меня оно не находило символические ссылки python в env):
Код:
sed -i '1c#!/usr/bin/python2' db2bin.py
Обычно crda установлен в /usr/lib/crda, но у меня он был установлен по пути /lib/crda, поэтому я заменяю строку "CRDA_PATH ?= $(PREFIX)/lib/crda" >на> "CRDA_PATH ?= /lib/crda" в файле Makefile:
Код:
sed -i '3cCRDA_PATH ?= /lib/crda' Makefile
Далее, в зависимости от вашей дефолтной страны (можно узнать командой "iw reg get"), редактируем db.txt файл как описано в первой части.

Теперь можно уже собрать, выполняем:
Код:
make
Убеждаемся, что ath9k драйвера(или устройство вынуто/выключено) и драйвера mac80211, cfg80211 у нас выгружены:
Код:
sudo modprobe -r ath9k
sudo modprobe -r mac80211 cfg80211
(нужны права root для извлечения модулей, также если у Вас подключены еще какие-то WiFi-устройства отличные от ath9k, то необходимо выгрузить их драйвера также)

Теперь устанавливаем regdomain командой:
Код:
sudo make install
(нужны права root для установки/замены regdomain)

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

Последний раз редактировалось Dioptimizer; 28.09.2018 в 14:05.
Dioptimizer вне форума   Ответить с цитированием
Старый 10.12.2017, 13:17   #3
zabses
Junior Member
 
Регистрация: 11.10.2015
Адрес: Украина
Сообщений: 16
Вес репутации: 0
zabses is an unknown quantity at this point
По умолчанию

Цитата:
Сообщение от Dioptimizer Посмотреть сообщение
Следующий шаг, перед компиляцией создаем конфиг. файл для ath9k драйверов после чего можно выполнить команду make:
Код:
sudo make defconfig-ath9k
sudo make
Отличная инструкция!
Но есть маленькая неприятность...
Если создать конфиг только для ath9k то после компиляции и установки не будут работать адаптеры,которые используют иной драйвер.
Поэтому создаём конфиг для всех адаптеров и собираем:
Код:
sudo make defconfig-wifi
sudo make
P.S. Прикрепил файл db.txt с разблокированными каналами для всех стран
Вложения
Тип файла: txt db.txt (37.6 Кб, 275 просмотров)
zabses вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 2 (пользователей: 0 , гостей: 2)
 
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 18:13. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика