BusyBox 1.31 sistemaren utilitateen multzo minimalista bat kaleratzea

Bidalita paketeen kaleratzea BusyBox 1.31 UNIX utilitate estandar batzuen ezarpenarekin, fitxategi exekutagarri bakar gisa diseinatua eta sistemaren baliabideen gutxieneko kontsumorako optimizatuta 1 MB baino gutxiagoko tamaina ezarrita. 1.31 adar berriaren lehen bertsioa ezegonkor gisa kokatuta dago, egonkortze osoa 1.31.1 bertsioan emango da, hilabete ingurura espero baita. Proiektuaren kodea GPLv2 lizentziapean banatzen da.

BusyBox-en izaera modularrak fitxategi exekutagarri bateratu bat sortzea ahalbidetzen du paketean inplementatutako utilitate multzo arbitrarioa duena (erabilgarritasun bakoitza fitxategi honetarako esteka sinboliko baten moduan dago eskuragarri). Utilitateen bildumaren tamaina, osaera eta funtzionaltasuna askotarikoak izan daitezke muntaia egiten ari den plataforma txertatuaren beharren eta gaitasunen arabera. Paketea autonomoa da; uclibc-ekin estatikoki eraikitzen denean, Linux nukleoaren gainean lan-sistema bat sortzeko, gailu-fitxategi batzuk bakarrik sortu behar dituzu /dev direktorioa eta konfigurazio-fitxategiak prestatu. Aurreko 1.30 bertsioarekin alderatuta, BusyBox 1.31 muntaia tipikoaren RAM kontsumoa 86 byte gutxitu zen (1008478tik 1008392 bytera).

BusyBox firmwarean GPL urraketen aurkako borrokan tresna nagusia da. Software Freedom Conservancy (SFC) eta Software Freedom Law Center (SFLC) BusyBox garatzaileen izenean, biak bidez epaitegian, eta horrela ondorioak Auzitegiz kanpoko akordioek arrakastaz eragin dute behin eta berriz GPL programen iturburu-koderako sarbidea ematen ez duten enpresetan. Aldi berean, BusyBox-en egileak ahal duen guztia egiten du objektuak babes horren aurka - bere negozioa hondatzen duela sinetsita.

Aldaketa hauek nabarmentzen dira BusyBox 1.31-n:

  • Komando berriak gehitu dira: ts (bezeroaren eta zerbitzariaren ezarpena TSP (Time-Stamp Protocol) protokolorako) eta i2ctransfer (I2C mezuak sortzea eta bidaltzea);
  • DHCP aukeren euskarria gehitu zaio udhcp-ri 100 (ordu-eremuaren informazioa) eta 101 (ordu-eremuaren izena TZ datu-basean) IPv6rako;
  • Udhcpd-n bezeroei ostalari-izen estatikoen loturarako laguntza gehitu zaie;
  • Ash eta hush maskolek "BASE#nnnn" zenbakizko literalak ezartzen dituzte. Ulimit komandoaren ezarpena bash bateragarri egin da, "-i RLIMIT_SIGPENDING" eta "-q RLIMIT_MSGQUEUE" aukerak barne. "itxaron -n" laguntza gehitu da. Bash-ekin bateragarriak diren EPOCH aldagaiak gehitu dira;
  • Hush shell-ak "$-" aldagai bat ezartzen du, lehenespenez gaituta dauden shell aukerak zerrendatzen dituena;
  • Balioak erreferentzia bidez pasatzeko kodea upstream-etik bc-ra transferitu zen, void funtzioetarako euskarria gehitu zen eta 36ra arteko ibase balioekin lan egiteko gaitasuna;
  • brctl-en, komando guztiak sasi-FS /sys erabiliz funtzionatzeko bihurtu dira;
  • fsync eta sync utilitateen kodea batu egin da;
  • httpd-ren ezarpena hobetu da. HTTP goiburuen prozesamendua hobetu da eta proxy moduan lan egin. MIME moten zerrendak SVG eta JavaScript barne hartzen ditu;
  • "-c" aukera gehitu da desinstalaziorako (begizta gailuarekin erlazionatutako fitxategiaren tamaina bikoiztu behartuta), baita partizioak eskaneatzeko aukera ere. mount eta losetup-ek /dev/loop-control erabiliz lan egiteko laguntza eskaintzen dute;
  • ntpd-n, SLEW_THRESHOLD balioa 0.125etik 0.5era igo da;
  • Sysctl-i balio nuluak esleitzeko euskarria gehitu da;
  • "-n SEC" aukeran balio zatikien laguntza gehitu da ikusteko;
  • mdev atzeko planoko prozesu gisa exekutatzeko gaitasuna gehitu da;
  • wget utilitateak "-o" marka inplementatzen du erregistroa idazteko fitxategia zehazteko. Deskargak hasi eta amaitzeari buruzko jakinarazpenak gehitu dira;
  • Telnetd-i AYT IAC komandoari euskarria gehitu zaio;
  • "dG" komandoa gehitu da vi-ra (ezabatu edukia uneko lerrotik fitxategiaren amaieraraino);
  • 'oflag=append' aukera gehitu da dd komandoari;
  • '-H' bandera gehitu da goiko utilitatean hari indibidualentzako eskaneatzeko modua gaitzeko.

Gainera, duela bi aste ospatu askatu Jostailu-kutxa 0.8.1, BusyBox-en analogoa, BusyBox-en mantentzaile ohiak eta banatuta BSD lizentziapean. Toybox-en helburu nagusia fabrikatzaileei utilitate estandar multzo minimalista bat erabiltzeko gaitasuna eskaintzea da, aldatutako osagaien iturburu-kodea ireki gabe. Orain arte Toybox gaitasunen arabera atzeratuta BusyBox-etik, baina aurreikusitako 188etatik 220 oinarrizko komando ezarri dira dagoeneko.

Toybox 0.8.1-ren berrikuntzen artean azpimarra dezakegu:

  • Android Toybox utilitateetan oinarritutako ingurune batean eraikitzeko nahikoa den funtzionaltasun maila lortu da.
  • mcookie eta devmem komando berriak sartzen dira, eta tar, gunzip eta zcat komando berridatziak proba adarretik mugitzen dira.
  • vi-ren ezarpen berri bat proposatu da probak egiteko.
  • Find komandoak "-wholename/-iwholename" aukerak onartzen ditu orain.
    "-printf" eta "-context";

  • "--exclude-dir" aukera gehitu da grep-era;
  • Echok orain "-E" aukera onartzen du.
  • "UUID" euskarria gehitu da muntatzeko.
  • Data komandoak orain TZ ingurune-aldagaian zehaztutako ordu-zona hartzen du kontuan.
  • Barruti erlatiboetarako (+N) euskarria gehitu zaio sedari.
  • ps, top eta iotop irteeraren irakurgarritasuna hobetu da.

Iturria: opennet.ru

Gehitu iruzkin berria