Release av en minimalistisk uppsättning systemverktyg BusyBox 1.34

Utgivningen av paketet BusyBox 1.34 presenteras med implementeringen av en uppsättning standard UNIX-verktyg, designade som en enda körbar fil och optimerad för minimal förbrukning av systemresurser med en inställd storlek på mindre än 1 MB. Den första utgåvan av den nya 1.34-grenen är positionerad som instabil; full stabilisering kommer att tillhandahållas i version 1.34.1, som förväntas om ungefär en månad. Projektkoden distribueras under GPLv2-licensen.

BusyBox modulära karaktär gör det möjligt att skapa en enhetlig körbar fil som innehåller en godtycklig uppsättning verktyg implementerade i paketet (varje verktyg är tillgängligt i form av en symbolisk länk till denna fil). Storleken, sammansättningen och funktionaliteten hos samlingen av verktyg kan varieras beroende på behoven och kapaciteten hos den inbäddade plattformen för vilken monteringen utförs. Paketet är fristående; när det byggs statiskt med uclibc, för att skapa ett fungerande system ovanpå Linux-kärnan, behöver du bara skapa flera enhetsfiler i /dev-katalogen och förbereda konfigurationsfiler. Jämfört med den tidigare versionen 1.33 ökade RAM-förbrukningen för den typiska BusyBox 1.34-enheten med 9620 byte (från 1032724 till 1042344 byte).

BusyBox är huvudverktyget i kampen mot GPL-överträdelser i firmware. Software Freedom Conservancy (SFC) och Software Freedom Law Center (SFLC), på uppdrag av BusyBox-utvecklarna, har upprepade gånger framgångsrikt påverkat företag som inte ger tillgång till källkoden för GPL-program, både genom domstolar och utanför -rättsöverenskommelser. Samtidigt protesterar författaren till BusyBox starkt mot ett sådant skydd – och tror att det förstör hans verksamhet.

Följande ändringar är markerade i BusyBox 1.34:

  • Lade till ett nytt ascii-verktyg med en interaktiv tabell med ASCII-teckennamn.
  • Lade till ett nytt verktyg crc32 för att beräkna kontrollsummor.
  • Den inbyggda http-servern stöder metoderna DELETE, PUT och OPTIONS.
  • Udhcpc ger möjlighet att ändra standardnamnet för nätverksgränssnittet.
  • Implementeringen av TLS-protokoll stöder nu elliptiska kurvor secp256r1 (P256)
  • Utvecklingen av ask- och hyschkommandoskalen har fortsatt. I tystnad har hanteringen av ^D-kommandot anpassats till beteendet för ash och bash, den bash-specifika $'str'-konstruktionen har implementerats och ${var/pattern/repl}-ersättningsoperationerna har genomförts optimerad.
  • En stor del av korrigeringar och förbättringar har gjorts i implementeringen av awk-verktyget.
  • Lade till "-i"-alternativet till base32- och base64-verktygen för att ignorera ogiltiga tecken.
  • I verktygen bc och dc är hanteringen av miljövariablerna BC_LINE_LENGTH och DC_LINE_LENGTH nära GNU-verktygen.
  • Lade till --getra och --setra alternativ till blockdev-verktyget.
  • Alternativet "-p" har lagts till i chattr- och lsattr-verktygen. lsattr har utökat antalet stödda ext2 FS-flaggor.
  • Alternativen "-n" (avaktivera överskrivning) och "-t DIR" (ange målkatalogen) har lagts till i cp-verktyget.
  • I cpio har konstruktionen "cpio -d -p A/B/C" justerats.
  • Alternativet "-t TYPE" har lagts till i df-verktyget (begränsar utdata till en specifik filtyp).
  • Lade till -b-alternativet till du utility (motsvarande '—apparent-size —block-size=1').
  • Lade till alternativet "-0" till verktyget env (avslutar varje rad med ett tecken med kod noll).
  • Alternativet "-h" (läsbar utdata) har lagts till i det fria verktyget.
  • Lade till alternativet "-t" (ignorera misslyckanden) till ionice-verktyget.
  • Inloggningsverktyget stöder nu miljövariabeln LOGIN_TIMEOUT.
  • Alternativen "-t" (ange målkatalogen som ska flyttas) och "-T" (behandla det andra argumentet som en fil) har lagts till i mv-verktyget.
  • Alternativet "-s SIZE" (antal byte som ska raderas) har lagts till i shred-verktyget.
  • Alternativet "-a" har lagts till i taskset-verktyget (tillämpa CPU-affinitet för alla processtrådar).
  • Timeout-, top-, watch- och ping-verktygen stöder nu icke-heltalsvärden (NN.N).
  • Alternativet "-z" har lagts till i uniq-verktyget (använd det nollkodade tecknet som avgränsare).
  • Alternativet "-t" (arkivkontroll) har lagts till i unzip-verktyget.
  • Vi-redigeraren tillåter användning av reguljära uttryck i kommandot ':s'. Lade till alternativet för expanderflik. Förbättrade implementeringar för att flytta mellan stycken, välja intervall och ångra ändringar.
  • Verktyget xxd implementerar alternativen -i (C-stil utgång) och -o DISPLAYOFFSET.
  • Verktyget wget tillåter bearbetning av HTTP 307/308-koder för omdirigeringar. FEATURE_WGET_FTP-alternativet har lagts till för att aktivera/inaktivera FTP-stöd.
  • Lade till alternativet "iflag=count_bytes" till dd-verktyget.
  • Skärverktyget implementerar de toybox-kompatibla alternativen "-O OUTSEP", "-D" och "-F LIST".

Källa: opennet.ru

Lägg en kommentar