Rilascio di un set minimalista di utilità di sistema BusyBox 1.32

Introdotto rilascio del pacchetto Casella occupata 1.32 con l'implementazione di un insieme di utilità UNIX standard, progettate come un singolo file eseguibile e ottimizzato per un consumo minimo di risorse di sistema con una dimensione impostata inferiore a 1 MB. La prima versione del nuovo ramo 1.32 è posizionata come instabile, la stabilizzazione completa verrà fornita nella versione 1.32.1, prevista tra circa un mese. Il codice del progetto è distribuito sotto la licenza GPLv2.

La natura modulare di BusyBox consente di creare un file eseguibile unificato contenente un insieme arbitrario di utilità implementate nel pacchetto (ogni utilità è disponibile sotto forma di un collegamento simbolico a questo file). La dimensione, la composizione e la funzionalità della raccolta di utilità possono essere variate a seconda delle esigenze e delle capacità della piattaforma embedded per la quale viene effettuato l'assemblaggio. Il pacchetto è autonomo; quando creato staticamente con uclibc, per creare un sistema funzionante sopra il kernel Linux, è sufficiente creare diversi file di dispositivo nella directory /dev e preparare i file di configurazione. Rispetto alla versione precedente 1.31, il consumo di RAM del tipico assieme BusyBox 1.32 è aumentato di 3590 byte (da 1011750 a 1015340 byte).

BusyBox è lo strumento principale nella lotta contro le violazioni della GPL nel firmware. La Software Freedom Conservancy (SFC) e il Software Freedom Law Center (SFLC) per conto degli sviluppatori BusyBox, sia attraverso tribunale, e in questo modo conclusioni accordi extragiudiziali hanno ripetutamente influenzato con successo le aziende che non forniscono l'accesso al codice sorgente dei programmi GPL. Allo stesso tempo, l'autore di BusyBox fa del suo meglio oggetti contro tale protezione, credendo che ciò rovini i suoi affari.

Le seguenti modifiche sono evidenziate in BusyBox 1.32:

  • Nuovo comando aggiunto me per eseguire skippt da un dato Mimfile (che ricorda in qualche modo un'utilità make ridotta al minimo);
  • L'utilità di ricerca ha aggiunto l'opzione “-empty” per verificare la presenza di file vuoti;
  • Nell'utilità wget è stato ampliato il limite al numero di reindirizzamenti ed è stato implementato il supporto per il controllo dei certificati TLS con ENABLE_FEATURE_WGET_OPENSSL;
  • Aggiunto il supporto corretto per un elenco di pattern (pattern_list) a grep e aggiunta l'opzione “-R” (elaborazione ricorsiva del contenuto della directory);
  • Risolti i problemi che si verificavano durante la compilazione in Clang 9 ed eliminati gli avvisi del compilatore;
  • Sono state proposte numerose correzioni per le shell dei comandi ash e hush, volte a migliorare la compatibilità con altre shell. La possibilità di completare automaticamente i comandi integrati con le schede è stata aggiunta ad ash e hush. I nuovi comandi integrati sono stati stabilizzati in cenere.
  • L'utilità fdisk ora supporta le partizioni HFS e HFS+;
  • init ha migliorato la gestione delle condizioni di gara quando vengono ricevuti i segnali;
  • All'utilità per il monitoraggio visivo dei parametri di sistema nmetro aggiunto il formato di output "%NT" (tempo allineato con zeri);
  • Al taskset è stata aggiunta la possibilità di elaborare e visualizzare un elenco di CPU (opzione “-c”);
  • In tar è stato modificato il comportamento dell'opzione "-a" che, invece di abilitare la compressione "lzma", è ora associata al rilevamento automatico per estensione del file;
  • Udhcpc6 ha aggiunto il supporto per "apolide» per DHCPv6 (il server invia solo parametri di rete, senza assegnare un indirizzo);
  • nslookup ora supporta l'elaborazione delle risposte senza record RR e aggiunge il supporto per i record SRV;
  • Nuovi comandi "showmacs" e "showstp" sono stati aggiunti a brctl;
  • Aggiunto il supporto per il parametro "relay server" a dhcpc;
  • Aggiunta impostazione a syslogd per visualizzare l'ora con precisione al millisecondo;
  • In httpd, quando si esegue in modalità NOMMU, è consentita l'impostazione di una directory home diversa e l'opzione '-h' funziona quando si esegue un processo in background;
  • xargs ha migliorato la gestione degli argomenti racchiusi tra virgolette e ha assicurato il corretto comportamento dell'opzione “-n”;
  • Risolti bug nelle utilità grep, top, dc, gzip, awk, bc, ntpd, pidof, stat, telnet, tftp, whois, unzip, chgrp, httpd, vi, route.

Inoltre, il mese scorso ha avuto luogo rilasciare Scatola dei giocattoli 0.8.3, un analogo di BusyBox, sviluppato dall'ex manutentore di BusyBox e distribuito sotto licenza BSD. Lo scopo principale di Toybox è fornire ai produttori la possibilità di utilizzare un set minimalista di utilità standard senza aprire il codice sorgente dei componenti modificati. Secondo le capacità di Toybox finora in ritardo da BusyBox, ma sono già stati implementati 272 comandi base (204 completamente e 68 parzialmente) sui 343 previsti.

Tra le novità di Toybox 0.8.3 possiamo notare:

  • Aggiunti nuovi comandi rtcwake, blkdiscard, getopt e readelf;
  • "make root" offre la possibilità di creare un ambiente di boot funzionante basato solo sul kernel Linux e sulle utilità Toybox, che possono essere caricate utilizzando il proprio script init;
  • Aggiunto supporto iniziale per moduli con implementazioni separate di utilità che non sono incluse nel ToyBox principale;
  • L'interprete dei comandi toysh è pronto all'80% (non c'è ancora supporto per funzioni, cronologia, gestione del terminale, lavori, $((matematica)), modelli);
  • Aggiunto supporto per opzioni aggiuntive a varie utilità, tra cui patch, cal, cp, mv, lsattr, chattr, ls, id, netcat e setsid.

Fonte: opennet.ru

Aggiungi un commento