Jako vždy podařená akce, zajímavý obsah, lidi, dobrá nálada, velké poděkování krom přednášejících patří organizátorům a partnerům za podporu této akce. Děkujeme.
Menší osobní výběr přednášek z Installfest 2016 toho nej z letošního ročníku akce, znovu opakuji osobní.
Nejrychlejší komplikace OpenWrt, pro úplné nováčky, nebojte se postavit si vlastní systém na míru, dle vlastních potřeb, díky automatizovanému build systému je to snadné.
Komplikaci provedeme na Debianu, budeme potřebovat cca 4GB volného místa a trpělivost, OpenWrt má vlastním buildovácí systém (Buildroot, můžete na něj narazit leckde, je to populární nástroj pro sestavení embedded Linuxu) pro cross-compile (sestavuje na x86 ale výstup poběží na jiné platformě).
Nainstaluje nezbytné věci pro překlad,vývoj a git (build-essential, ať žije síla balíčkovacích systému), poté klonujeme git repozitář OpenWrt, jdeme na to.
Tak, máme základ OpenWrt stažen (cca 200MB), nyní potřebujeme balíčky (feeds, potravu) pro sestavení, další se budou dotahovat podle toho vše budeme chtít začlenit.
havel@havel-machine:~/Work$ cd openwrt
havel@havel-machine:~/Work/openwrt$ ./scripts/feeds update -a
havel@havel-machine:~/Work/openwrt$ ./scripts/feeds install -a
Tak konsole na nás hodně křičela, stáhlo se cca dalších 50MB dat, ale nebojte se ničeho, pokračuje dále k sestavení.
havel@havel-machine:~/Work/openwrt$ make defconfig
havel@havel-machine:~/Work/openwrt$ make prereq
havel@havel-machine:~/Work/openwrt$ make menuconfig
Po poslední příkazu se dostáváme k textovému menu, zde si vybereme co chceme sestavit, pro jakou architekturu, jaké balíčky zahrneme (ty se následně stáhnout ve formě zdrojového kódu a zkompilují), jak krásné a jednoduché.
Nejklíčovější je výběr správné cílové architektury (target), otevřete menu, vyberte Broadcom BCM2708/BCM2709 pro Raspebrry Pi 2, stejným způsobem můžete přeložit OpenWrt pro cokoliv jiného, výběr je velmi široký.
Doporučuji si pohrát s v menu Target images -> Boot SD card partition size a Root filesystem partition size , což jsou velikosti oddílů pro boot a root, jako filesystém nechávám ext4.
V kernel -> Wireless si vyberte ovladače pro bezdratové adaptéry pokud je budete používat, já jsem si ještě začlenil VLAN (802.1q), zabbix agenta, LuCI, LuCI Asterisk, coova-chilli a pár dalších, hodí se i wpa_supplicant, obecně menuconfig je velmi bohatý projděte se ho až budete mít chvilku, vše co zaškrtáte má vliv na dobu komplikace, množství stahovaných dat i výslednou velikost image.
Jdeme buildovat (komplikovat), pozor z menuconfig vyberte Save, uložte do souboru .config a až poté exit.
*** End of the configuration.
*** Execute 'make' to start the build or try 'make help'.
havel@havel-machine:~/Work/openwrt$ make -j 3
make[1] world
make[2] tools/install
make[2] package/cleanup
make[3] -C tools/patch compile
make[3] -C tools/expat compile
make[3] -C tools/sstrip compile
make[3] -C tools/make-ext4fs compile
... čekejte a čekejte ...
... pokud jste pozorní všimnete si, že openwrt si samo sestavilo gcc (překladač, či obecně tzv. toolchain) pro své pokračování v překladu ...
make[3] -C toolchain/gcc/final compile
make[3] -C toolchain/gcc/final install
make[2] target/compile
make[3] -C target/linux compile
Hotovo, výstup (připravený image) najdete v openwrt/bin/ , OpenWrt build automaticky sestavil image pro modely Raspberry b,b+ a CM (Compute Module).
OpenWrt obsahuje balíčkovací systém opkg, jde o repositáře s předkompilovaným software pro danou platformu, není nutné tedy software (userspace + ovladače) kompilovat pokud nechcete, ale ta možnost tu stále je. Pro úplnost, balíčky jsou soubory s koncovkou .ipk např. iperf_2.0.5-1_brcm2708.ipk.
Pro Broadcom 2708 a 2709 tedy Raspberry Pi 2 použijte tento předkompilovaný repositář, nastavte si ho v /etc/opkg.con a udělejte opkg update, získáte přístup k rozsáhlému množství software.
Hotovo, tak kompilujte, pokud bude zájem je možné si příště ukázat patchnutí a kompilace OpenWrt jako metarouter Mikrotik s instalací VoIP telefonní ústředny Asterisk, za velmi nízké náklady tak získáte router s Wifi, až ethernet 10portů pro LAN a VoIP telefony.
Užívejte moudře, díky za pozornost. František Havel, MOJEservery.cz.