BusyBox 1.32 системийн хэрэгслүүдийн минималист багцыг гаргасан

Оруулсан багц хувилбар BusyBox 1.32 1 МБ-аас бага хэмжээтэй системийн нөөцийн хамгийн бага хэрэглээнд зориулж, нэг гүйцэтгэгдэх файл хэлбэрээр бүтээгдсэн стандарт UNIX хэрэгслүүдийн багцыг хэрэгжүүлснээр. Шинэ салбар 1.32-ын анхны хувилбар нь тогтворгүй гэсэн байр суурьтай байгаа бөгөөд 1.32.1 хувилбарт бүрэн тогтворжуулалт хийгдэх бөгөөд энэ нь нэг сарын дараа хүлээгдэж байна. Төслийн кодыг GPLv2 лицензийн дагуу түгээдэг.

BusyBox-ийн модульчлагдсан шинж чанар нь багцад хэрэгжсэн дурын хэрэглүүрүүдийг агуулсан нэг нэгдмэл гүйцэтгэгдэх файл үүсгэх боломжийг олгодог (хэрэгсэл бүрийг энэ файлын симбол холбоос хэлбэрээр авах боломжтой). Хэрэгслийн цуглуулгын хэмжээ, найрлага, функциональ байдал нь угсрах ажлыг гүйцэтгэж буй суулгагдсан платформын хэрэгцээ, боломжоос хамааран өөр өөр байж болно. Уг багц нь бие даасан бөгөөд uclibc-тэй статик байдлаар бүтээгдсэн тохиолдолд Линуксийн цөм дээр ажиллах систем үүсгэхийн тулд та /dev директорт хэд хэдэн төхөөрөмжийн файл үүсгэж, тохиргооны файлуудыг бэлтгэхэд л хангалттай. Өмнөх хувилбар 1.31-тэй харьцуулахад ердийн BusyBox 1.32 угсралтын RAM хэрэглээ 3590 байт (1011750-аас 1015340 байт хүртэл) нэмэгдсэн байна.

BusyBox бол програм хангамжийн GPL зөрчлийн эсрэг тэмцэх гол хэрэгсэл юм. BusyBox хөгжүүлэгчдийн нэрийн өмнөөс Програм хангамжийн эрх чөлөөний хамгаалал (SFC) ба Програм хангамжийн эрх чөлөөний хуулийн төв (SFLC) нь шүүх, мөн энэ замаар дүгнэлт Шүүхээс гадуурх гэрээнүүд нь GPL програмын эх код руу нэвтрэх эрх өгдөггүй компаниудад олон удаа амжилттай нөлөөлсөн. Үүний зэрэгцээ BusyBox-ийн зохиогч чадах бүхнээ хийдэг объектууд ийм хамгаалалтын эсрэг - энэ нь түүний бизнесийг сүйрүүлдэг гэж үздэг.

BusyBox 1.32 дээр дараах өөрчлөлтүүдийг онцлон тэмдэглэв.

  • Шинэ тушаал нэмэгдсэн MIM өгөгдсөн Mimfile-аас skippts ажиллуулах (хуучирсан make utility-ийг зарим талаар санагдуулдаг);
  • Хайлтын хэрэгсэл нь хоосон файлуудыг шалгахын тулд "-empty" сонголтыг нэмсэн;
  • Wget хэрэгсэлд дахин чиглүүлэлтийн тооны хязгаарыг өргөтгөж, TLS сертификатыг ENABLE_FEATURE_WGET_OPENSSL-ээр шалгах дэмжлэгийг хэрэгжүүлсэн;
  • grep-д хэв маягийн жагсаалтад (pattern_list) зөв дэмжлэг нэмж, "-R" сонголтыг нэмсэн (сангийн агуулгын рекурсив боловсруулалт);
  • Clang 9-ийг бүтээхэд гарсан асуудлуудыг шийдэж, хөрвүүлэгчийн анхааруулгыг арилгасан;
  • Бусад бүрхүүлүүдтэй нийцтэй байдлыг сайжруулахад чиглэсэн үнс ба чимээгүй командын бүрхүүлд зориулсан олон тооны засваруудыг санал болгосон. Үнс болон чимээгүй байдалд таб бүхий суулгасан командуудыг автоматаар бөглөх чадварыг нэмсэн. Шинэ суурилуулсан тушаалуудыг үнсэнд тогтворжуулсан.
  • fdisk хэрэгсэл нь одоо HFS болон HFS+ хуваалтыг дэмждэг;
  • init дохио хүлээн авах үед уралдааны нөхцөл байдлыг сайжруулахад хүргэсэн;
  • Системийн параметрүүдийг нүдээр хянах хэрэгсэлд nmeter "%NT" гаралтын форматыг нэмсэн (цаг тэгтэй зэрэгцсэн);
  • CPU-ийн жагсаалтыг боловсруулах, харуулах чадварыг даалгаврын багцад нэмсэн ("-c" сонголт);
  • tar дээр "-a" тохируулгын үйлдлийг өөрчилсөн бөгөөд энэ нь "lzma" шахалтыг идэвхжүүлэхийн оронд одоо файлын өргөтгөлөөр автоматаар илрүүлэхтэй холбоотой болсон;
  • Udhcpc6 "-д дэмжлэг нэмсэн.харьяалалгүй» DHCPv6-д зориулагдсан (сервер нь хаяг өгөхгүйгээр зөвхөн сүлжээний параметрүүдийг илгээдэг);
  • nslookup нь одоо RR бичлэггүйгээр хариултуудыг боловсруулахыг дэмжиж, SRV бичлэгүүдэд дэмжлэг нэмдэг;
  • "showmacs" болон "showstp" гэсэн шинэ командууд brctl-д нэмэгдсэн;
  • dhcpc-д "релей сервер" параметрийн дэмжлэгийг нэмсэн;
  • Цагийг миллисекундын нарийвчлалтайгаар харуулах тохиргоог syslogd-д нэмсэн;
  • httpd дээр NOMMU горимд ажиллах үед өөр гэрийн лавлахыг тохируулахыг зөвшөөрдөг бөгөөд арын процессыг ажиллуулах үед '-h' сонголт ажилладаг;
  • xargs нь хашилтанд орсон аргументуудын зохицуулалтыг сайжруулж, "-n" сонголтын зөв ажиллагааг хангасан;
  • grep, top, dc, gzip, awk, bc, ntpd, pidof, stat, telnet, tftp, whois, unzip, chgrp, httpd, vi, route хэрэгслүүдийн алдааг зассан.

Мөн өнгөрсөн сард болсон суллах Тоглоомын хайрцаг 0.8.3, BusyBox-ын аналог бөгөөд хуучин BusyBox засварлагчийн боловсруулсан тараасан BSD лицензийн дагуу. Toybox-ийн гол зорилго нь үйлдвэрлэгчдэд өөрчлөгдсөн бүрэлдэхүүн хэсгүүдийн эх кодыг нээхгүйгээр минималист стандарт хэрэгслүүдийг ашиглах боломжийг олгох явдал юм. Одоогоор Toybox-ын боломжуудын дагуу хоцорч байна BusyBox-аас, гэхдээ төлөвлөсөн 272-аас 204 үндсэн тушаалыг (68 бүрэн, 343 хэсэгчлэн) аль хэдийн хэрэгжүүлсэн.

Toybox 0.8.3-ийн шинэчлэлээс дараахь зүйлийг тэмдэглэж болно.

  • rtcwake, blkdiscard, getopt болон readelf гэсэн шинэ тушаалуудыг нэмсэн;
  • "root хийх" нь зөвхөн өөрийн init скриптийг ашиглан ачаалах боломжтой Линукс цөм болон Toybox хэрэглүүрт тулгуурлан ажиллах ачаалах орчинг бий болгох боломжийг олгодог;
  • Үндсэн ToyBox-т ороогүй хэрэгслүүдийг тусад нь хэрэгжүүлсэн модулиудын анхны дэмжлэгийг нэмсэн;
  • Командын хэлмэрч toysh 80% бэлэн байна (функц, түүх, терминалын удирдлага, ажлын байр, $((математик)), загваруудыг хараахан дэмждэггүй);
  • Patch, cal, cp, mv, lsattr, chattr, ls, id, netcat, setsid зэрэг төрөл бүрийн хэрэгслүүдийн нэмэлт сонголтуудын дэмжлэгийг нэмсэн.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх