BusyBox 1.32 minimalistik tizim yordam dasturlari to'plamining chiqarilishi

Tanishtirdi paketni chiqarish BusyBox 1.32 yagona bajariladigan fayl sifatida ishlab chiqilgan va belgilangan hajmi 1 MB dan kam bo'lgan tizim resurslarini minimal iste'mol qilish uchun optimallashtirilgan standart UNIX utilitlari to'plamini amalga oshirish bilan. Yangi 1.32 filialining birinchi versiyasi beqaror sifatida joylashtirilgan, to'liq barqarorlashtirish taxminan bir oy ichida kutilayotgan 1.32.1 versiyasida ta'minlanadi. Loyiha kodi GPLv2 litsenziyasi ostida tarqatiladi.

BusyBox-ning modulli tabiati paketda amalga oshirilgan ixtiyoriy yordamchi dasturlar to'plamini o'z ichiga olgan bitta yagona bajariladigan faylni yaratishga imkon beradi (har bir yordamchi dastur ushbu faylga ramziy havola ko'rinishida mavjud). Kommunal xizmatlar to'plamining hajmi, tarkibi va funksionalligi yig'ish amalga oshirilayotgan o'rnatilgan platformaning ehtiyojlari va imkoniyatlariga qarab o'zgarishi mumkin. Paket o'z-o'zidan mavjud; uclibc bilan statik tarzda qurilganda, Linux yadrosi ustida ishlaydigan tizim yaratish uchun siz /dev katalogida bir nechta qurilma fayllarini yaratishingiz va konfiguratsiya fayllarini tayyorlashingiz kerak. Oldingi versiya 1.31 bilan solishtirganda, odatiy BusyBox 1.32 yig'ilishining RAM iste'moli 3590 baytga oshdi (1011750 dan 1015340 baytgacha).

BusyBox proshivkada GPL buzilishlariga qarshi kurashda asosiy vositadir. BusyBox ishlab chiquvchilari nomidan Software Freedom Conservancy (SFC) va Software Freedom Law Center (SFLC) ikkalasi orqali sud, va shu tarzda xulosalar suddan tashqari kelishuvlar GPL dasturlarining manba kodiga kirishni ta'minlamaydigan kompaniyalarga bir necha bor muvaffaqiyatli ta'sir ko'rsatdi. Shu bilan birga, BusyBox muallifi qo'lidan kelganini qiladi ob'ektlar bunday himoyaga qarshi - bu uning biznesini buzadi deb ishonadi.

BusyBox 1.32 da quyidagi o'zgarishlar ta'kidlangan:

  • Yangi buyruq qo'shildi MIME berilgan Mimfile dan skipptsni ishga tushirish (bir oz qisqartirilgan make yordam dasturini eslatadi);
  • Find yordam dasturi bo'sh fayllarni tekshirish uchun "-empty" variantini qo'shdi;
  • Wget yordam dasturida qayta yo'naltirishlar soni bo'yicha cheklov kengaytirildi va TLS sertifikatlarini ENABLE_FEATURE_WGET_OPENSSL bilan tekshirishni qo'llab-quvvatlash joriy etildi;
  • grep uchun naqshlar ro'yxatini (pattern_list) to'g'ri qo'llab-quvvatlash qo'shildi va "-R" opsiyasi qo'shildi (katalog tarkibini rekursiv qayta ishlash);
  • Clang 9 da qurishda yuzaga kelgan muammolarni hal qildi va kompilyator ogohlantirishlarini yo'q qildi;
  • Boshqa qobiqlar bilan muvofiqlikni yaxshilashga qaratilgan kul va hush buyruq qobig'i uchun ko'plab tuzatishlar taklif qilingan. Yorliqlar bilan o'rnatilgan buyruqlarni avtomatik to'ldirish qobiliyati kul va jimlikka qo'shildi. Yangi o'rnatilgan buyruqlar kulda barqarorlashtirildi.
  • fdisk yordam dasturi endi HFS va HFS+ bo'limlarini qo'llab-quvvatlaydi;
  • init signallar qabul qilinganda poyga sharoitlarini boshqarishni yaxshiladi;
  • Tizim parametrlarini vizual monitoring qilish uchun yordamchi dasturga nmetr qo'shilgan chiqish formati "%NT" (vaqt nolga tenglashtirilgan);
  • Vazifalar to'plamiga protsessorlar ro'yxatini qayta ishlash va ko'rsatish imkoniyati qo'shildi (β€œ-c” varianti);
  • Tarda "-a" variantining harakati o'zgartirildi, bu "lzma" siqishni yoqish o'rniga endi fayl kengaytmasi bo'yicha avtomatik aniqlash bilan bog'liq;
  • Udhcpc6 " uchun qo'llab-quvvatladi.fuqaroligi yo'qΒ» DHCPv6 uchun (server manzilni belgilamasdan faqat tarmoq parametrlarini yuboradi);
  • nslookup endi RR yozuvlarisiz javoblarni qayta ishlashni qo'llab-quvvatlaydi va SRV yozuvlarini qo'llab-quvvatlaydi;
  • brctl ga yangi "showmacs" va "showstp" buyruqlari qo'shildi;
  • dhcpc-ga "relay server" parametri uchun qo'shimcha yordam qo'shildi;
  • Vaqtni millisekundlik aniqlikda ko'rsatish uchun syslogd-ga sozlama qo'shildi;
  • httpd da, NOMMU rejimida ishlayotganda, boshqa uy katalogini o'rnatishga ruxsat beriladi va fon jarayonini ishga tushirishda "-h" opsiyasi ishlaydi;
  • xargs qo'shtirnoq ichiga olingan argumentlar bilan ishlashni yaxshiladi va "-n" variantining to'g'ri ishlashini ta'minladi;
  • Grep, top, dc, gzip, awk, bc, ntpd, pidof, stat, telnet, tftp, whois, unzip, chgrp, httpd, vi, route utilitalaridagi xatolar tuzatildi.

Bundan tashqari, o'tgan oy amalga oshirildi reliz Toybox 0.8.3, BusyBox-ning analogi, sobiq BusyBox ta'minotchisi tomonidan ishlab chiqilgan va tarqatilgan BSD litsenziyasi ostida. Toybox-ning asosiy maqsadi ishlab chiqaruvchilarga o'zgartirilgan komponentlarning dastlabki kodini ochmasdan minimalistik standart yordamchi dasturlardan foydalanish imkoniyatini berishdir. Hozirgacha Toybox imkoniyatlariga ko'ra orqada qolish BusyBox-dan, lekin rejalashtirilgan 272 tadan 204 ta asosiy buyruq allaqachon amalga oshirilgan (68 tasi to'liq va 343 tasi qisman).

Toybox 0.8.3 innovatsiyalari orasida quyidagilarni ta'kidlashimiz mumkin:

  • Rtcwake, blkdiscard, getopt va readelf yangi buyruqlar qo'shildi;
  • "root yaratish" faqat Linux yadrosi va Toybox yordam dasturlari asosida ishlaydigan yuklash muhitini yaratish imkoniyatini beradi, uni o'zining boshlang'ich skripti yordamida yuklash mumkin;
  • Asosiy ToyBox-ga kiritilmagan yordamchi dasturlarning alohida ilovalari bo'lgan modullar uchun dastlabki yordam qo'shildi;
  • Buyruq tarjimoni toysh 80% tayyor (funksiyalar, tarix, terminal boshqaruvi, ish oβ€˜rinlari, $((matematik)), shablonlarni qoβ€˜llab-quvvatlamaydi;
  • Patch, cal, cp, mv, lsattr, chattr, ls, id, netcat va setsid kabi turli xil yordamchi dasturlarga qo'shimcha imkoniyatlar qo'shildi.

Manba: opennet.ru

a Izoh qo'shish