Попробую и я себя в роли пейсателя... думаю Ачатовцы будут не против...
В данной статье я попытаюсь раписать от А до Я весь процесс сборки кастомной прошивки для ОпенВРТ + ништячок в виде балансировки между провайдерами.
Собственно для чего нужна кастомная прошивка если на фтп-сервере ОпенВРТ выливают Гигабайты прошивок?
Кастомные прошивки нужны для исключительных ситуаций:
- Разработка своего функционала и доп.софта
- Когда для дополнительных пакетов просто не хватает места
- Когда хочется собрать пакет All-In-One (предустановленый софт)
Сборка прошивки из исходников.
1) Для начала нужно скачать сурс с которого всё будет собираться в одну кучу...
Выбор сурсов тут ...
https://dev.openwrt.org/wiki/GetSource
Trunk- "основной ресурс OpenWRT"
Код:
Code:
git clone git://github.com/openwrt/openwrt.git
Chaos Calmer - "следующая версия OpenWRT, находится в стадии trunk. Обещается в будущем переход на версию kernel 3.14 и подхватывание всех современных тенденций. Версия для экспериментаторов. Временами возникают проблемы, но быстро лечатся. Если руки у Вас прямы, нервы крепки, готовы и морально и физически к трудностям, которые могут возникнут совершено случайно при очередной пересборке, то смотрите лучше на эту версию."
Код:
Code:
git clone -b chaos_calmer git://github.com/openwrt/openwrt.git
Barrier Breaker - "версия, обещающая стать заменой предыдущей, на сегодня находится в стадии RC (release candidate). ставшая новым stable-релизом. если случаются обновления исходного кода, то только критические исправления, не замеченные в период тестирования.
Пока имеет множество небольшое количество о умолчанию не доступных дополнительных пакетов, но если вы не планируете запускать на маршрутизаторе Web-сервер или еще какое нестандартное извращение, то проблем у Вас не возникнет."
Код:
Code:
git clone -b barrier_breaker git://github.com/openwrt/openwrt.git
Attitude Adjustment - "проверенная стабильная версия, однако на фоне неумолимого прогресса в сфере информационных технологий актуальность её угасает"
Код:
Code:
git clone -b attitude_adjustment git://github.com/openwrt/openwrt.git
2)Устанавливаем доп.софт необходимый для компиляции..
apt-get update
apt-get install git-core build-essential libssl-dev libncurses5-dev unzip gawk zlib1g-dev libssl1.0-dev subversion mercurial
3) Далее подготавливаем зависимости... (запускаем скрипт в папке с сурсом)
./scripts/feeds update -a
./scripts/feeds install -a
4) Подготовка компиляции (находясь в папке с сурсом ввести)
make prereq
5) Выбор платформы.
make menuconfig
после этой команды должно появится вот такое окошко...
Управление тут примитивное Стрелками Вверх-Вниз перемещаемся между строками, вход в подуровень Enter, пометить\снять метку - пробелом.
Выбираем Target System, Subtarget, Targer Peofile. Нажимаем Save и Exit.
Далее вводим.
make defconfig
и еще раз
make menuconfig
и собственно сама сборка...
make -j2 V=s FORCE_UNSAFE_CONFIGURE=1
флаг -j указывает количество ядер процессора.
флаг s=V значит подробный вывод текущего состояния компилирования
флаг FORCE_UNSAFE_CONFIGURE=1 значит сборка под рутом (без этого флага не запустится компиляция)
6) Осталось забрать готовую прошивку по адресу:
.../bin/
тип процессора/
Предупреждение: После компиляции возможно раздутие папки до 7 Gb!
******************************************
В данной статье использовались следующие материалы
Источник -
https://github.com/freifunk-gluon/gluon/issues/973
Источник -
http://wiki.openwrt.org/doc/howto/buildroot.exigence
Источник -
https://www.denisyuriev.ru/linux/ope...iz-isxodnikov/
Примечание: Для полноценного запуска пришлось столкнутся с костылями которые в процессе пришлось решить что потребовало небольших усилий... Самое печальное что об этих костылях не пишут не в офф.мануале по сборке не в видео-обзорах Ютуба... у них всё в шоколаде! ))))
P.S - Время компиляции на моём нетбуке составило ~ 4 часов. 48 минут с ключем
j2
.SpoilerTarget" type="button">Spoiler: Конфигурация такая:
- CPU Intel Atom N450 1.66 Ghz (1 ядро x 2 потока)
- DDR 2 - 2 Gb
- SSD OCZ - 120 Gb