Uvolnění minimalistického balíčku systémových utilit BusyBox 1.32

Představení vydání balíčku BusyBox 1.32 s implementací souboru standardních Unixových utilit, zformovaných do jednoho spustitelného souboru a optimalizovaných pro minimální spotřebu systémových prostředků při velikosti balíčku menší než 1 MB. První vydání nové větve 1.32 je označeno jako nestabilní, plná stabilizace bude zajištěna ve verzi 1.32.1, jejíž vydání se očekává přibližně za měsíc. Kód projektu je distribuován pod licencí GPLv2.

Modulární charakter BusyBox umožňuje vytvořit jeden unifikovaný spustitelný soubor, který obsahuje libovolný soubor realizovaných utilit v balíčku (každá utilita je k dispozici ve formě symbolického odkazu na tento soubor). Velikost, složení a funkčnost kolekce utilit lze variabilně přizpůsobovat podle potřeb a možností vestavěné platformy, pro kterou se sestavuje. Balíček je soběstačný, při statické kompilaci s uclibc k vytvoření funkčního systému nad jádrem Linux je potřeba pouze vytvořit několik zařízení v adresáři /dev a připravit konfigurační soubory. Ve srovnání s předchozím vydáním 1.31 se spotřeba operační paměti typickou sestavou BusyBox 1.32 zvýšila o 3590 bajtů (z 1011750 na 1015340 bajtů).

BusyBox je základním nástrojem v boji proti porušování GPL ve firmwaru. Organizace Software Freedom Conservancy (SFC) a Software Freedom Law Center (SFLC) jménem vývojářů BusyBox, jak prostřednictvím soudu, tak i prostřednictvím uzavření mimosoudních dohod opakovaně úspěšně působily na společnosti, které neposkytovaly přístup k zdrojovému kódu GPL programů. Zároveň autor BusyBox vehementně proti této ochraně odporuje — považuje ji za narušující jeho podnikání. V verzi BusyBox 1.32 jsou vyzdviženy následující změny:

mim

  • Byl přidán nový příkaz pro spuštění skriptů z určeného souboru Mimfile (něco jako zjednodušená utilita make); V utilitě find byla přidána volba '-empty' pro kontrolu prázdných souborů;
  • V utilitě wget byl rozšířen limit na počet přesměrování a realizováno podpora pro kontrolu TLS certifikátů při selhání s ENABLE_FEATURE_WGET_OPENSSL;
  • V grep byla přidána správná podpora seznamu vzorů (pattern_list) a přidána volba '-R' (rekurzivní zpracování obsahu adresáře);
  • Byly vyřešeny problémy, které se objevovaly při kompilaci v Clang 9, a odstraněna varování od kompilátoru.
  • Byly vyřešeny problémy, které se projevovaly při sestavování v Clang 9, a odstraněna varování kompilátoru;
  • Byla navržena široká řada oprav v shellových interpretech ash a hush, zaměřená na zlepšení kompatibility s jinými shelly. Do ash a hush byla přidána možnost automatického doplňování vestavěných příkazů pomocí tabulátoru. V ash byly stabilizovány nové vestavěné příkazy.
  • V nástroji fdisk byla přidána podpora pro oddíly HFS a HFS+;
  • Ve init byla vylepšena správa stavu závodů při příjmu signálů;
  • Do nástroje pro vizuální monitoring systémových parametrů nmeter byl přidán formát výstupu „%NT“ (zarovnaný čas s nulami);
  • Do taskset byla přidána možnost zpracování a výstupu seznamu CPU (volba „-c“);
  • V tar se změnilo chování volby „-a“, která místo zapnutí komprese „lzma“ nyní souvisí s automatickým určením podle přípony souboru;
  • Ve udhcpc6 byla přidána podpora režimu „stateless“ pro DHCPv6 (server poskytuje pouze síťové parametry, bez přidělení adresy);
  • V nslookup byla zajištěna podpora odpovědí bez záznamů RR a byla přidána podpora záznamů SRV;
  • V brctl byly přidány nové příkazy „showmacs“ a „showstp“;
  • Do dhcpc byla přidána podpora parametru „relay server“;
  • Do syslogd byla přidána konfigurace pro zobrazení času s milisekundovou přesností;
  • V httpd při práci v režimu NOMMU bylo povoleno nastavení jiného domovského adresáře a zajištěna funkčnost volby ‚-h‘ při spuštění na pozadí;
  • V xargs byla vylepšena správa argumentů uzavřených v uvozovkách a zajištěno správné chování volby „-n“;
  • Byly opraveny nedostatky v nástrojích grep, top, dc, gzip, awk, bc, ntpd, pidof, stat, telnet, tftp, whois, unzip, chgrp, httpd, vi, route.

Kromě toho, minulý měsíc se uskutečnilo vydání Toybox 0.8.3, což je ekvivalent BusyBox, vyvíjený bývalým udržovatelem BusyBox a distribuovaný pod licencí BSD. Hlavním účelem Toyboxu je poskytnout výrobcům možnost používat minimalistickou sadu standardních nástrojů bez otevření zdrojových kódů modifikovaných komponent. Z pohledu funkcí Toybox zatím zaostává za BusyBox, ale již bylo realizováno 272 základních příkazů (204 úplně a 68 částečně) z plánovaných 343.

Mezi novinkami Toyboxu 0.8.3 lze vyzdvihnout:

  • Byly přidány nové příkazy rtcwake, blkdiscard, getopt a readelf;
  • V „make root“ byla zajištěna možnost vytvořit pracovní spouštěcí prostředí pouze na základě jádra Linux a nástrojů Toybox, které může být načteno pomocí vlastního init skriptu;
  • Byla přidána počáteční podpora modulů s oddělenými implementacemi utilit, které nejsou součástí hlavního souboru ToyBox;
  • Příkazový interpret toysh je připraven na 80 % (zatím chybí podpora funkcí, historie, řízení terminálu, úloh, $((math)), šablon);
  • Byla přidána podpora dalších možností v různých utilitách, včetně patch, cal, cp, mv, lsattr, chattr, ls, id, netcat a setsid.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster