Ссылка:
1 2 3 4 5 6 7 8 9 |
Image Builder: Это предварительно скомпилированная среда, используемая для создания пользовательских образов прошивок без необходимости компиляции ядра и пакетов. https://openwrt.org/docs/guide-user/additional-software/imagebuilder https://openwrt.org/ru/docs/guide-user/additional-software/imagebuilder https://openwrt.org/toh/start - поиск устройства https://downloads.openwrt.org/releases/ - релиз |
Готовим систему:
1 2 3 4 5 6 7 8 9 10 |
Debian/Ubuntu sudo apt-get update sudo apt-get install build-essential libncurses5-dev libncursesw5-dev zlib1g-dev gawk git gettext libssl-dev xsltproc wget unzip python CentOS/RHEL yum install subversion git gawk gettext ncurses-devel zlib-devel openssl-devel libxslt wget yum group install "Development Tools" Fedora 27+ dnf install @c-development @development-tools @development-libs zlib-static which |
Готовим образ openwrt:
1 2 3 4 5 6 |
0. Скачиваем openwrt-imagebuilder под наше устройство: cd /opt wget https://downloads.openwrt.org/releases/21.02.3/targets/ipq40xx/mikrotik/openwrt-imagebuilder-21.02.3-ipq40xx-mikrotik.Linux-x86_64.tar.xz 1. Распакуйте архив с Image Builder и перейдите в его директорию. tar -pxf openwrt-imagebuilder-21.02.3-ipq40xx-mikrotik.Linux-x86_64.tar.xz cd openwrt-imagebuilder-21.02.3-ipq40xx-mikrotik.Linux-x86_64 |
Настраиваем образ openwrt:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
!!! make image команда создаст образ для устройства по умолчанию со стандартными (необходимыми) пакетами. !!! PROFILE - определяет целевой профиль для сборки !!! PACKAGES - список пакетов, добавляемых (исключаемых) в образ !!! FILES - каталог с пользовательскими файлами для добавления !!! BIN_DIR - Пользовательская директория для создаваемого образа !!! EXTRA_IMAGE_NAME - Пользовательское имя для создаваемого образа !!! DISABLED_SERVICES - Какие службы в /etc/init.d/ будут отключены по умолчанию !!! make image PROFILE=XXX PACKAGES="pkg1 pkg2 -pkg3 -pkg4" FILES=files/ !!! make clean - Для удаления всех временных файлов сборки и сгенерированных образов воспользуйтесь командой: 0. Смотрим список целевых профилей. make info 1. если требуется перенастроить файлы то создаем директорию files !!! В этот каталог добавляем свои файлы !!! По умолчанию фалы будут помещены в корень на целевой системе !!! Требуется создавать структуру каталогов. mkdir files mkdir files/etc 2. Определившись с профилем, пакетами, файлами, выполняем сборку !!! (-) - минус перед пакетом предполагает его удаление в конечной сборке make image PROFILE=XXX PACKAGES="pkg1 pkg2 -pkg3 -pkg4" FILES=files/ |
Где же файлы:
1 2 3 4 |
После завершения команды make сгенерированные образы сохраняются в каталоге bin /device-architecture , как если бы вы их компилировали. Созданный образ можно найти в подкаталоге ./bin/targets/<target>/genericили загляните внутрь. /build_dir/для файлов *-squashfs-sysupgrade.bin и *-squashfs-factory.bin (например /build_dir/target-mips_24kc_musl/linux-ar71xx_tiny/tmp/openwrt-18.06.2-ar71xx-tiny-tl-wr740n-v6-squashfs-factory.bin) |
Пример:
1 2 |
make info make image PROFILE=fsl_ls1046a-frwy-sdboot PACKAGES="block-mount kmod-fs-ext4 kmod-usb-storage e2fsprogs kmod-usb-ohci kmod-usb-uhci fdisk -layerscape-fman -tfa-ls1046a-frwy-sdboot" |