ImageBuilder skraca drastycznie czas budowania obrazów OpenWrt. Umożliwia zbudowanie obrazu ze wszystkich dostępnych pakietów w systemie. Istnieje również możliwość dodawania własnych pakietów i plików.
ImageBuilder kompilowany jest dla każdej platformy. W zależności dla jakiej platformy chcemy budować własne obrazy musimy pobrać odpowiednią kompilacje ImageBuilder'a.
Poniżej zaprezentowane są linki do najczęściej spotykanych platform w Polsce. Odnośniki dotyczą ImageBuilder OpenWrt 10.03. Pliki są dość dużej objętości od 200 do 350MB.
| Platforma | ar7 | ar71xx | atheros | brcm-2.4 | brcm47xx | x86 |
|---|---|---|---|---|---|---|
| Link | Pobierz | Pobierz | Pobierz | Pobierz | Pobierz | Pobierz |
Poniższy opis dotyczy platformy ar71xx.
Pobieramy, rozpakowujemy archiwum i wchodzimy do katalogu głównego ImageBuilder'a:
tar -xjvf OpenWrt-ImageBuilder-ar71xx-for-Linux-i686.tar.bz2 mv OpenWrt-ImageBuilder-ar71xx-for-Linux-i686 OpenWrt-ImageBuilder-ar71xx cd OpenWrt-ImageBuilder-ar71xx
Każda platforma zawiera profile dla konkretnych urządzeń. Profile to krótki zapis z informacją jakie pakiety będą umieszczone w obrazie. Informacje jakie profile dostępne są w danej platformie uzyskujemy komendą:
make info
Przykład:
TLWR941NDV4: TP-LINK TL-WR941ND v4 Packages: kmod-ath9k wpad-mini TLWR1043NDV1: TP-LINK TL-WR1043ND v1 Packages: kmod-ath9k wpad-mini kmod-usb-core kmod-usb2 TEW652BRP: TRENDNet TEW-652BRP Packages: kmod-ath9k UBNTRS: Ubiquiti RouterStation Packages: kmod-usb-core kmod-usb-ohci kmod-usb2 UBNTRSPRO: Ubiquiti RouterStation Pro Packages: kmod-usb-core kmod-usb-ohci kmod-usb2 UBNT: Ubiquiti Products Packages: kmod-usb-core kmod-usb-ohci kmod-usb2
Dużymi literami mam nazwę profile, czego dotyczy i jakie paczki są domyślnie.
Budowanie WSZYSTKICH obrazów danej platformy:
make image
Zbudowanie obrazu domyślnego pod konkretne urządzenie wymaga wykonania komendy wraz z nazwą profilu:
make image PROFILE=NAZWA
Budowanie obrazu w którym nadpisujemy/dodajemy własne pliki konfiguracyjne lub inne:
make image FILES="ŚCIESZKA_DO_KATALOGU"
Dodanie dodatkowych pakietów do obrazu (domyślnego profilu urządzenia). Możliwe jest również usuwanie pakietów, poprzedzamy paczkę znakiem - („minus”) (np. -ppp -ppp-mod-pppoe) Dodając paczkę miejmy na uwadze, że automatycznie zostaną dodane zależności tejże paczki.
make image PACKAGES="PACZKA (PACZKA1 PACZKA2...PACZKAN)"
Usuwanie wszystkich zbudowanych obrazów odbywa się przez wykonanie:
make clean
Krótkie założenia:
Dodajemy pakiety:
Prekompilowane pakiety które możemy użyć w naszym obrazie znajdują się w /packages w głównym katalogu ImageBuilder. Tutaj właśnie możemy wrzucać też nasze własne pakiety. Istotne aby zgadzały się platformy.
Dodajemy dodatkowe pliki:
Pliki które chcemy dodać lub nadpisać w systemie umieszczamy w tplink-files/ (lub innym) w głównym katalogu ImageBuilder. Ważne, aby struktura folderów przypominała faktyczne odzwierciedlenie w systemie OpenWrt. Funkcja bardzo przydatna. Umożliwia nadpisanie standardowych plików systemu np. ustawień sieciowych czy pewnych usług jakie chcemy mięć już ustawione w obrazie.
Ostateczny obraz budujemy komendą:
make image PROFILE=TLWR1043NDV1 PACKAGES="crda iw transmission-web kmod-fs-ext2 kmod-fs-ext2 kmod-fs-ext4 vsftpd fdisk e2fsprogs tune2fs samba3 block_mount" FILES=tplink-files/
Obraz gotowy będzie w ciągu kilku minut i znajdować się będzie w bin/ar71xx/.