Pxe
Содержание
OpenWRT
Подготовка сборочницы
apt update && apt dist-upgrade -y && apt install -y binutils libncurses5-dev bzip2 flex gawk gcc-7 grep libc-dev libz-dev make perl python rsync subversion unzip git
cd
Клонирование исходников и сборка
git clone https://github.com/openwrt/openwrt
cd openwrt
make menuconfig
(там выбрать target x86, subtarget=x86_64), в build settings сконфигурить размеры образа, еще в base system выпилить firewall если он не нужен, и т.д...
make -j$(nproc)
результаты будут в папке bin
Если нужен доп. софт
./scripts/feeds update -a ./scripts/feeds install -a
Затем через
make menuconfig
выбираем нужные пакеты и пересобираем через
make -j$(nproc)
Если нужно добавить пакет вручную
В каталоге
./feeda/packages/нужная_категория
создать каталог по аналогии с существующими, сформировать внутри Makefile, затем
./scripts/feeds update -i ./scripts/feeds install -a
Затем выбрать нужный пакет для сборки в меню через
make menuconfig
И собрать всё как обычно
make -j$(nproc)
Переопределение и добавление каталогов и файлов в rootfs
Чтобы добавлять/заменять файлы в будущем образе (менять конфиги/ключи/что угодно) нужно создать папку files на вернхнем уровне (там же где .config) и работать с ней так, как будто это корень системы.
Т.е., например, files/etc/rc.local в образе будет как /etc/rc.local, ну и т.д...