logo

Как самостоятельно собрать "чистую" прошивку на базе OpenWRT для роутеров iRZ R0, R2, R4

Для сборки чистой прошивки вам потребуются базовые знания ОС Linux и компьютер с ним на борту, подключенный к сети Интернет.

Перед началом работы

Поскольку роутеры базируются на платформе OpenWRT, то сперва необходимо ознакомиться c рекомендациями по работе с OpenWRT:

Справочная информация:

Порядок работы со средой сборки (build environment):

Также необходимо наличие установленной на компьютер системы управления версиями - Git

Прочитать о Git можно по следующей ссылке:

Собранная прошивка будет «чистой», без нашего веб-интерфейса и некоторых пакетов, написанных нашими программистами.

Настройку роутера необходимо будет осуществлять самостоятельно - ручной правкой конфигурационных файлов, либо установив штатный графический интерфейс OpenWRT - Luci

Перед началом работы проверьте установлены-ли на компьютере следующие пакеты:

build-essential

libncurses5-dev

libncursesw5-dev

zlib1g-dev

libssl-dev

subversion

Исходный код

Исходный код прошивок к роутерам серии Rx находятся тут:

openwrt-19.07 - репозиторий с текущей версией, устанавливающейся на роутер. (Версия OpenWRT может отличаться от указанной в примере по мере миграции на новые);

openwrt-envs-19.07 - репозиторий с конфигами openwrt для сборки прошивок к роутерам серии R0/R2/R4.

При сборке openwrt, собирается toolchain и все необходимые библиотеки.

Наши внутренние репозитории при сборке не используются.

Роутеры семейства R4 использует архитектуру процессора kirkwood.

Роутеры серии R0,R2 используют архитектуру ramips.

Сборка Toolchain

Пример команд для сборки (все примеры приведены для роутеров серии R2):

git clone https://bitbucket.org/radiofid/openwrt-19.07.git

cd openwrt-19.07

git clone https://bitbucket.org/radiofid/openwrt-envs-19.07.git env

Добавляем в файл feeds.conf.default необходимые ссылки для пакетов luci.

Пример файла feeds.conf можно найти по ссылке:

Далее выбираем серию роутера R2(mt02), R0(mt00) или R4(kw04):

./scripts/env switch mt02

Обновляем зависимости:

./scripts/feeds update -a

Устанавливаем зависимости:

./scripts/feeds install -a

Повторно выбираем платформу роутера:

./scripts/env switch mt02

Компилируем toolchain и образ следующими командами:

make menuconfig

в псевдографическом меню выбрать нужные пакеты для использования на роутере;

make -j1 V=s

сборка будет осуществляться в один поток, с выводом лога и возникших ошибок

После завершения

Компилятор/линкер и прочее лежат в директории /openwrt-19.07/staging_dir/toolchain-XXXX/

Файл прошивки, с расширением tar, находится:

  • для роутеров серии R4 в каталоге /openwrt-19.07/bin/kirkwood

  • для роутеров серии R0/R2 в каталоге /openwrt-19.07/bin/ramips

Не допускайте отключения питания в процессе прошивки!

Далее устанавливаете прошивку через веб-интерфейс Tools → Management → Update Firmware

Рекомендуем после перепрошивки сделать сброс на заводские настройки.

Если устанавливали интерфейс Luci, то браузер, при первом входе на ip адрес роутера (192.168.1.1) предупредит, что не доверяет сертификату https страницы, подписанному openwrt - добавьте его в исключения браузера.

Для возврата на прошивку iRZ, скачайте последнюю версию с сайта http://www.radiofid.ru/

Установите ее через веб-интерфейс и после перепрошивки сделайте сброс настроек на заводские:

Tools → Reboot → Perform factory reset