Uitgave van een minimalistische set systeemhulpprogramma's BusyBox 1.34

De release van het BusyBox 1.34-pakket wordt gepresenteerd met de implementatie van een set standaard UNIX-hulpprogramma's, ontworpen als een enkel uitvoerbaar bestand en geoptimaliseerd voor minimaal verbruik van systeembronnen met een vaste grootte van minder dan 1 MB. De eerste release van de nieuwe branch 1.34 is gepositioneerd als onstabiel; volledige stabilisatie zal worden geboden in versie 1.34.1, die over ongeveer een maand wordt verwacht. De projectcode wordt gedistribueerd onder de GPLv2-licentie.

Het modulaire karakter van BusyBox maakt het mogelijk om één verenigd uitvoerbaar bestand te creëren dat een willekeurige set hulpprogramma's bevat die in het pakket zijn geïmplementeerd (elk hulpprogramma is beschikbaar in de vorm van een symbolische link naar dit bestand). De omvang, samenstelling en functionaliteit van de verzameling nutsvoorzieningen kan worden gevarieerd afhankelijk van de behoeften en mogelijkheden van het embedded platform waarvoor de assemblage wordt uitgevoerd. Het pakket is op zichzelf staand; als het statisch is gebouwd met uclibc, hoeft u, om een ​​werkend systeem bovenop de Linux-kernel te creëren, slechts enkele apparaatbestanden in de map /dev aan te maken en configuratiebestanden voor te bereiden. Vergeleken met de vorige release 1.33 is het RAM-verbruik van de typische BusyBox 1.34-assemblage toegenomen met 9620 bytes (van 1032724 naar 1042344 bytes).

BusyBox is het belangrijkste hulpmiddel in de strijd tegen GPL-schendingen in firmware. De Software Freedom Conservancy (SFC) en Software Freedom Law Center (SFLC) hebben namens de BusyBox-ontwikkelaars herhaaldelijk met succes bedrijven beïnvloed die geen toegang bieden tot de broncode van GPL-programma's, zowel via de rechtbank als via externe instanties. -gerechtelijke overeenkomsten. Tegelijkertijd maakt de auteur van BusyBox krachtig bezwaar tegen een dergelijke bescherming, in de overtuiging dat dit zijn bedrijf ruïneert.

De volgende wijzigingen zijn gemarkeerd in BusyBox 1.34:

  • Een nieuw ascii-hulpprogramma toegevoegd met een interactieve tabel met ASCII-tekennamen.
  • Een nieuw hulpprogramma crc32 toegevoegd voor het berekenen van controlesommen.
  • De ingebouwde http-server ondersteunt de DELETE-, PUT- en OPTIONS-methoden.
  • Udhcpc biedt de mogelijkheid om de standaard netwerkinterfacenaam te wijzigen.
  • De implementatie van TLS-protocollen ondersteunt nu elliptische curven secp256r1 (P256)
  • De ontwikkeling van de as- en hush-commandogranaten is voortgezet. In stilte is de afhandeling van het ^D-commando in overeenstemming gebracht met het gedrag van ash en bash, is de bash-specifieke $'str'-constructie geïmplementeerd en zijn de vervangingsbewerkingen van ${var/pattern/repl} uitgevoerd. geoptimaliseerd.
  • Er zijn een groot deel van de correcties en verbeteringen aangebracht in de implementatie van het hulpprogramma awk.
  • Optie "-i" toegevoegd aan base32- en base64-hulpprogramma's om ongeldige tekens te negeren.
  • In de bc- en dc-hulpprogramma's ligt de verwerking van de omgevingsvariabelen BC_LINE_LENGTH en DC_LINE_LENGTH dicht bij die van de GNU-hulpprogramma's.
  • Opties --getra en --setra toegevoegd aan het blockdev-hulpprogramma.
  • De optie "-p" is toegevoegd aan de hulpprogramma's chattr en lsattr. lsattr heeft het aantal ondersteunde ext2 FS-vlaggen uitgebreid.
  • De opties “-n” (overschrijven uitschakelen) en “-t DIR” (specificeer de doelmap) zijn toegevoegd aan het cp-hulpprogramma.
  • In cpio is de constructie “cpio -d -p A/B/C” aangepast.
  • De optie “-t TYPE” is toegevoegd aan het df-hulpprogramma (waardoor de uitvoer wordt beperkt tot een specifiek bestandstype).
  • Optie -b toegevoegd aan du utility (equivalent aan '—schijnbare grootte —blokgrootte=1').
  • Optie “-0” toegevoegd aan het env-hulpprogramma (elke regel wordt afgesloten met een teken met code nul).
  • De optie “-h” (leesbare uitvoer) is toegevoegd aan het gratis hulpprogramma.
  • Optie "-t" (fouten negeren) toegevoegd aan het ionice-hulpprogramma.
  • Het inloghulpprogramma ondersteunt nu de omgevingsvariabele LOGIN_TIMEOUT.
  • Opties "-t" (specificeer de doelmap die u wilt verplaatsen) en "-T" (behandel het tweede argument als een bestand) toegevoegd aan het mv-hulpprogramma.
  • De optie "-s SIZE" (aantal te wissen bytes) is toegevoegd aan het vernietigingshulpprogramma.
  • De optie "-a" is toegevoegd aan het takensethulpprogramma (CPU-affiniteit toepassen op alle procesthreads).
  • De time-out-, top-, watch- en ping-hulpprogramma's ondersteunen nu niet-gehele waarden (NN.N).
  • De optie "-z" is toegevoegd aan het uniq-hulpprogramma (gebruik het nulgecodeerde teken als scheidingsteken).
  • De optie “-t” (archiefcontrole) is toegevoegd aan het uitpakhulpprogramma.
  • De vi-editor staat het gebruik van reguliere expressies toe in het ':s'-commando. Optie voor uitvouwen toegevoegd. Verbeterde implementaties voor het verplaatsen tussen alinea's, het selecteren van bereiken en het ongedaan maken van wijzigingen.
  • Het hulpprogramma xxd implementeert de opties -i (C-stijluitvoer) en -o DISPLAYOFFSET.
  • Met het wget-hulpprogramma kunnen HTTP 307/308-codes voor omleidingen worden verwerkt. FEATURE_WGET_FTP optie toegevoegd om FTP-ondersteuning in/uit te schakelen.
  • Optie "iflag=count_bytes" toegevoegd aan het dd-hulpprogramma.
  • Het cut-hulpprogramma implementeert de toybox-compatibele opties “-O OUTSEP”, “-D” en “-F LIST”.

Bron: opennet.ru

Voeg een reactie