Release van de minimalistische set systeemhulpprogramma's BusyBox 1.31

Geïntroduceerd pakketuitgave BusyBox 1.31 met de implementatie van een set standaard UNIX-hulpprogramma's, samengevoegd in één uitvoerbaar bestand en geoptimaliseerd voor minimaal systeemverbruik met een pakketgrootte van minder dan 1 MB. De eerste release van de nieuwe tak 1.31 wordt gepositioneerd als instabiel, volledige stabilisatie zal worden gegarandeerd in versie 1.31.1, die over ongeveer een maand wordt verwacht. De code van het project wordt verspreid onder de GPLv2-licentie.

De modulare aard van BusyBox maakt het mogelijk om één uniforme uitvoerbare bestand te creëren dat een willekeurige set van hulpprogramma's bevat die in het pakket zijn geïmplementeerd (elk hulpprogramma is beschikbaar als een symbolische link naar dit bestand). De grootte, samenstelling en functionaliteit van de verzameling hulpprogramma's kan worden gevarieerd, afhankelijk van de behoeften en mogelijkheden van het embedded platform waarvoor de bouw plaatsvindt. Het pakket is self-contained, bij een statische bouw met uclibc is het vereist om slechts een paar apparaatbestanden te creëren in de map /dev en configuratiebestanden voor te bereiden om een werkend systeem bovenop de Linux-kernel te creëren. Vergeleken met de vorige release 1.30 is het geheugengebruik van de typische BusyBox 1.31-build met 86 bytes verminderd (van 1008478 naar 1008392 bytes).

BusyBox is een belangrijke tool in de strijd tegen GPL-overtredingen in firmware. Organisaties zoals de Software Freedom Conservancy (SFC) en het Software Freedom Law Center (SFLC) hebben namens de ontwikkelaars van BusyBox zowel via rechtbankzaken, als via schikkingen meerdere keren succesvol bedrijven onder druk gezet die geen toegang bieden tot de broncode van GPL-software. Tegelijkertijd verzet de auteur van BusyBox zich krachtig tegen deze bescherming — beschouwend dat het zijn bedrijf schaadt. In BusyBox versie 1.31 zijn de volgende wijzigingen aangebracht:

Nieuwe opdrachten zijn toegevoegd: ts (implementatie van een client en server voor het TSP-protocol (Time-Stamp Protocol)) en i2ctransfer (creëren en verzenden van I2C-berichten);

  • Ondersteuning voor DHCP-opties is toegevoegd aan udhcp
  • (informatie over de tijdzone) en 101 (de naam van de tijdzone in de TZ-database) voor IPv6; 100 In udhcpd is ondersteuning voor statische bindings van hostnamen aan clients toegevoegd;
  • In de shells ash en hush zijn numerieke literals 'BASE#nnnn' geïmplementeerd. De ulimit-opdracht is compatibel gemaakt met bash, inclusief de opties '-i RLIMIT_SIGPENDING' en '-q RLIMIT_MSGQUEUE'. Ondersteuning voor 'wait -n' is toegevoegd. Bash-compatibele variabelen EPOCH zijn ook toegevoegd;
  • In de command shells ash en hush zijn numerieke literalen "BASE#nnnn" geïmplementeerd. De ulimit-opdracht is compatibel gemaakt met bash, waaronder de opties "-i RLIMIT_SIGPENDING" en "-q RLIMIT_MSGQUEUE" zijn toegevoegd. Ondersteuning voor "wait -n" is toegevoegd. Bash-compatibele variabelen EPOCH zijn toegevoegd.
  • In de command shell hush is er een variabele «$-« geïmplementeerd waarin de standaard actieve opties van de command shell zijn opgesomd;
  • In bc is de code uit upstream overgenomen voor het doorgeven van waarden via referentie, ondersteuning voor void-functies toegevoegd en de mogelijkheid om waarden ibase tot 36 te verwerken;
  • In brctl zijn alle commando's aangepast voor gebruik met het pseudo-FS /sys;
  • De code van de utilities fsync en sync is samengevoegd;
  • De implementatie van httpd is verbeterd. De verwerking van HTTP-headers en de werking in proxy-modus zijn verbeterd. SVG- en JavaScript MIME-types zijn aan de lijst toegevoegd;
  • In losetup is de optie «-c» toegevoegd (gedwongen hercontrole van de bestandsgrootte die aan het loop-apparaat is gekoppeld), evenals een optie voor het scannen van partities. In mount en losetup is ondersteuning voor het gebruik van /dev/loop-control gegarandeerd;
  • In ntpd is de waarde SLEW_THRESHOLD verhoogd van 0.125 naar 0.5;
  • In sysctl is ondersteuning voor het toewijzen van lege waarden toegevoegd;
  • In watch is ondersteuning voor decimale waarden in de optie «-n SEC» toegevoegd;
  • De mogelijkheid om mdev als achtergrondproces te starten is toegevoegd;
  • In de utility wget is de vlag «-o» geïmplementeerd voor het bepalen van het logbestand. Meldingen over het begin en het einde van de download zijn toegevoegd;
  • In telnetd is ondersteuning voor de AYT IAC-commando toegevoegd;
  • In vi is het commando ‘dG’ toegevoegd (verwijderen van de inhoud van de huidige regel tot het einde van het bestand);
  • Een optie ‘oflag=append’ is toegevoegd aan het commando dd;
  • In de utility top is de vlag ‘-H’ toegevoegd voor het inschakelen van de modus voor het scannen van afzonderlijke threads.

Bovendien, twee weken geleden heeft plaatsgevonden release Toybox 0.8.1, een alternatief voor BusyBox, ontwikkeld door de voormalige maintainer van BusyBox en verspreid onder de BSD-licentie. Het belangrijkste doel van Toybox is om fabrikanten de mogelijkheid te bieden een minimalistische set van standaardutilities te gebruiken zonder de broncode van gemodificeerde componenten vrij te geven. Wat functionaliteit betreft, is Toybox voorlopig achterblijvend ten opzichte van BusyBox, maar er zijn al 188 basiscommando’s van de 220 geplande gerealiseerd.

Van de nieuwigheden in Toybox 0.8.1 kan worden opgemerkt:

  • Een functieniveau is bereikt dat voldoende is voor de opbouw van Android in een omgeving gebaseerd op Toybox utilities.
  • Nieuwe commando's mcookie en devmem zijn toegevoegd, en gereviseerde commando's tar, gunzip en zcat zijn uit de testtak overgenomen.
  • Voor testen is een nieuwe implementatie van vi voorgesteld.
  • In het commando find is ondersteuning voor de opties «-wholename/-iwholename»,
    «-printf» en «-context» toegevoegd;
  • In grep is de optie «—exclude-dir» toegevoegd;
  • In echo is ondersteuning voor de optie «-E» beschikbaar gekomen.
  • In mount is ondersteuning voor «UUID» toegevoegd.
  • In het date-commando is ondersteuning voor de tijdzone toegevoegd, zoals ingesteld in de omgevingsvariabele TZ.
  • In sed is ondersteuning voor relatieve bereiken (+N) toegevoegd.
  • De leesbaarheid van de output van ps, top en iotop is verbeterd.

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster