Frigivelse af et minimalistisk sæt af systemværktøjer BusyBox 1.34

Udgivelsen af ​​BusyBox 1.34-pakken præsenteres med implementeringen af ​​et sæt standard UNIX-værktøjer, designet som en enkelt eksekverbar fil og optimeret til minimalt forbrug af systemressourcer med en indstillet størrelse på mindre end 1 MB. Den første udgivelse af den nye gren 1.34 er positioneret som ustabil, fuld stabilisering vil blive leveret i version 1.34.1, som forventes om cirka en måned. Projektkoden distribueres under GPLv2-licensen.

Den modulære karakter af BusyBox gør det muligt at oprette én samlet eksekverbar fil, der indeholder et vilkårligt sæt af hjælpeprogrammer implementeret i pakken (hvert hjælpeprogram er tilgængeligt i form af et symbolsk link til denne fil). Størrelsen, sammensætningen og funktionaliteten af ​​samlingen af ​​hjælpeprogrammer kan varieres afhængigt af behovene og mulighederne for den indlejrede platform, som samlingen udføres for. Pakken er selvstændig; når den er bygget statisk med uclibc, for at skabe et fungerende system oven på Linux-kernen, behøver du kun at oprette flere enhedsfiler i /dev-mappen og forberede konfigurationsfiler. Sammenlignet med den tidligere udgivelse 1.33 steg RAM-forbruget af den typiske BusyBox 1.34-samling med 9620 bytes (fra 1032724 til 1042344 bytes).

BusyBox er hovedværktøjet i kampen mod GPL-overtrædelser i firmware. Software Freedom Conservancy (SFC) og Software Freedom Law Center (SFLC) har på vegne af BusyBox-udviklerne gentagne gange med succes påvirket virksomheder, der ikke giver adgang til kildekoden til GPL-programmer, både gennem domstolene og uden for -retsaftaler. Samtidig protesterer forfatteren af ​​BusyBox på det kraftigste mod en sådan beskyttelse - og mener, at det ødelægger hans forretning.

Følgende ændringer er fremhævet i BusyBox 1.34:

  • Tilføjet et nyt ascii-værktøj med en interaktiv tabel med ASCII-tegnnavne.
  • Tilføjet et nyt værktøj crc32 til beregning af kontrolsummer.
  • Den indbyggede http-server understøtter metoderne DELETE, PUT og OPTIONS.
  • Udhcpc giver mulighed for at ændre standardnetværksgrænsefladenavnet.
  • Implementeringen af ​​TLS-protokoller understøtter nu elliptiske kurver secp256r1 (P256)
  • Udviklingen af ​​aske- og hush-kommandoskallerne er fortsat. I stilhed er håndteringen af ​​^D-kommandoen blevet bragt i overensstemmelse med adfærden af ​​ash og bash, den bash-specifikke $'str'-konstruktion er blevet implementeret, og ${var/pattern/repl}-erstatningsoperationerne er blevet optimeret.
  • En stor del af rettelser og forbedringer er blevet foretaget til implementeringen af ​​awk-værktøjet.
  • Tilføjet "-i" mulighed til base32 og base64 hjælpeprogrammer for at ignorere ugyldige tegn.
  • I bc- og dc-værktøjerne er håndteringen af ​​miljøvariablerne BC_LINE_LENGTH og DC_LINE_LENGTH tæt på GNU-værktøjerne.
  • Tilføjet --getra og --setra muligheder til blockdev-værktøjet.
  • Muligheden "-p" er blevet tilføjet til chattr- og lsattr-værktøjerne. lsattr har udvidet antallet af understøttede ext2 FS-flag.
  • Indstillingerne "-n" (deaktiver overskrivning) og "-t DIR" (angiv målbiblioteket) er blevet tilføjet til cp-værktøjet.
  • I cpio er konstruktionen "cpio -d -p A/B/C" blevet justeret.
  • Indstillingen "-t TYPE" er blevet tilføjet til df-værktøjet (begrænser output til en bestemt filtype).
  • Tilføjet -b option til du utility (svarende til '—apparent-size —block-size=1').
  • Tilføjet mulighed "-0" til env-værktøjet (afslutter hver linje med et tegn med kode nul).
  • "-h"-indstillingen (læsbart output) er blevet tilføjet til det gratis hjælpeprogram.
  • Tilføjet mulighed "-t" (ignorer fejl) til ionice-værktøjet.
  • Login-værktøjet understøtter nu miljøvariablen LOGIN_TIMEOUT.
  • Tilføjede muligheder "-t" (angiv den målmappe, der skal flyttes) og "-T" (behandl det andet argument som en fil) til mv-værktøjet.
  • Indstillingen "-s SIZE" (antal bytes, der skal slettes) er blevet tilføjet til shred-værktøjet.
  • "-a"-indstillingen er blevet tilføjet til opgavesæt-værktøjet (anvend CPU-affinitet for alle procestråde).
  • Timeout-, top-, watch- og ping-værktøjerne understøtter nu ikke-heltalsværdier (NN.N).
  • "-z"-indstillingen er blevet tilføjet til uniq-værktøjet (brug det nulkodede tegn som afgrænsning).
  • "-t"-indstillingen (arkivkontrol) er blevet tilføjet til unzip-værktøjet.
  • vi-editoren tillader brugen af ​​regulære udtryk i kommandoen ':s'. Tilføjet mulighed for udvidet faneblad. Forbedrede implementeringer til at flytte mellem afsnit, vælge områder og fortryde ændringer.
  • xxd-værktøjet implementerer -i (C-stil output) og -o DISPLAYOFFSET muligheder.
  • Wget-værktøjet tillader behandling af HTTP 307/308-koder til omdirigeringer. Tilføjet mulighed for FEATURE_WGET_FTP for at aktivere/deaktivere FTP-understøttelse.
  • Tilføjet "iflag=count_bytes" mulighed til dd-værktøjet.
  • Skæringsværktøjet implementerer de toybox-kompatible muligheder "-O OUTSEP", "-D" og "-F LIST".

Kilde: opennet.ru

Tilføj en kommentar