Vydání minimalistického souboru systémových utilit BusyBox 1.31

Představení vydání balíčku BusyBox 1.31 s implementací souboru standardních utilit UNIX, zpracovaných jako jediný spustitelný soubor 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.31 je prezentováno jako nestabilní, plné stabilizace bude zajištěno ve verzi 1.31.1, která 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 sjednocený spustitelný soubor, který obsahuje libovolný soubor implementovaný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ě měnit v závislosti na potřebách a možnostech vestavěné platformy, pro kterou se sestava provádí. Balíček je soběstačný, při statické sestavě s uclibc pro vytvoření funkčního systému nad jádrem Linux stačí vytvořit několik souborů zařízení v adresáři /dev a připravit konfigurační soubory. Ve srovnání s předchozím vydáním 1.30 se spotřeba operační paměti typické sestavy BusyBox 1.31 snížila o 86 bajtů (ze 1008478 na 1008392 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:

Ve verzi BusyBox 1.31 se vyzdvihují následující změny:

  • Byly přidány nové příkazy: ts (implementace klienta a serveru pro protokol TSP (Time-Stamp Protocol)) a i2ctransfer (vytváření a odesílání zpráv I2C);
  • Do udhcp byla přidána podpora DHCP voleb 100 (informace o časovém pásmu) a 101 (název časového pásma v DB TZ) pro IPv6;
  • Do udhcpd byla přidána podpora statických vazeb názvů hostitelů na klienty;
  • V příkazových interpretech ash a hush byla implementována číselná literály „BASE#nnnn“. Byla zajištěna shoda s bash implementací příkazu ulimit, včetně přidání voleb „-i RLIMIT_SIGPENDING“ a „-q RLIMIT_MSGQUEUE“. Byla přidána podpora „wait -n“. Přidány proměnné kompatibilní s bash EPOCH;
  • V příkazovém interpretu hush byla implementována proměnná „$-“, ve které jsou uvedeny aktivované možnosti příkazového interpretu předefinované;
  • V bc z upstreamu byl přenesen kód pro předávání hodnot referencí, přidána podpora void funkcí a možnost práce s hodnotami ibase až do 36;
  • V brctl byly všechny příkazy převedeny na práci s využitím pseudofilesystemu /sys;
  • Byl sloučen kód utilit fsync a sync;
  • Vylepšená implementace httpd. Zlepšena zpracování HTTP hlaviček a provoz v režimu proxy. Na seznam MIME typů byly přidány SVG a JavaScript;
  • Do losetup byla přidána volba "-c" (nucená kontrola velikosti souboru spojeného s loop zařízením), stejně jako volba pro skenování oddílů. V mount a losetup byla zajištěna podpora práce s použitím /dev/loop-control;
  • V ntpd byla hodnota SLEW_THRESHOLD zvýšena z 0.125 na 0.5;
  • V sysctl byla přidána podpora přiřazení prázdných hodnot;
  • Do watch byla přidána podpora pro desetinné hodnoty v volbě "-n SEC";
  • Byla přidána možnost spouštět mdev jako proces na pozadí;
  • V utilitě wget byl implementován příznak "-o" pro určení souboru pro zápis logu. Přidána oznámení o začátku a ukončení stahování;
  • Do telnetd byla přidána podpora pro příkaz AYT IAC;
  • Do vi byla přidána příkaz 'dG' (odstranění obsahu od aktuálního řádku po konec souboru);
  • Do příkazu dd byla přidána volba 'oflag=append';
  • Do utility top byl přidán příznak '-H' pro zapnutí režimu skenování jednotlivých vláken.

Kromě toho, před dvěma týdny se uskutečnilo vydání Toybox 0.8.1, 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á z BusyBox, ale již bylo implementováno 188 základních příkazů z 220 plánovaných.

Mezi novinky Toybox 0.8.1 lze zmínit:

  • Byl dosažen úroveň funkčnosti dostatečná pro sestavení Androidu v prostředí založeném na utilitách Toybox.
  • Byly přidány nové příkazy mcookie a devmem, přepsané příkazy tar, gunzip a zcat byly přeneseny z testovací větve.
  • Byla navržena nová implementace vi pro testování.
  • Do příkazu find byla přidána podpora pro volby "-wholename/-iwholename",
    "-printf" a "-context";
  • Do grep byla přidána volba "—exclude-dir";
  • Do echo byla přidána podpora pro volbu "-E."
  • Do mount byla přidána podpora pro "UUID."
  • Do příkazu date byla přidána podpora pro časové pásmo zadané proměnnou prostředí TZ.
  • Do sed byla přidána podpora pro relativní rozsahy (+N).
  • Byla zlepšena čitelnost výstupu ps, top a iotop.

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