BusyBox 1.31 minimalistik tizim yordam dasturlari to'plamining chiqarilishi

Tanishtirdi paketni chiqarish BusyBox 1.31 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.31 filialining birinchi versiyasi beqaror sifatida joylashtirilgan, to'liq barqarorlashtirish taxminan bir oy ichida kutilayotgan 1.31.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'zini o'zi ta'minlaydi; 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.30 bilan solishtirganda, odatiy BusyBox 1.31 yig'ilishining RAM iste'moli 86 baytga kamaydi (1008478 dan 1008392 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.31 da quyidagi o'zgarishlar ta'kidlangan:

  • Yangi buyruqlar qo'shildi: ts (TSP (Time-Stamp Protocol) protokoli uchun mijoz va serverni amalga oshirish) va i2ctransfer (I2C xabarlarini yaratish va jo'natish);
  • Udhcp-ga DHCP opsiyalarini qo'llab-quvvatlash qo'shildi 100 (vaqt mintaqasi haqida ma'lumot) va IPv101 uchun 6 (TZ ma'lumotlar bazasida vaqt zonasi nomi);
  • Udhcpd'dagi mijozlarga xost nomini statik bog'lash uchun qo'shimcha yordam;
  • Ash va hush qobiqlari "BASE#nnnn" raqamli harflarni amalga oshiradi. Ulimit buyrug'ining bajarilishi bash-ga moslashtirildi, jumladan β€œ-i RLIMIT_SIGPENDING” va β€œ-q RLIMIT_MSGQUEUE” variantlari. "Wit -n" uchun qo'llab-quvvatlash qo'shildi. Bash-mos EPOCH o'zgaruvchilari qo'shildi;
  • Hush qobig'i sukut bo'yicha yoqilgan qobiq variantlarini ko'rsatadigan "$-" o'zgaruvchisini amalga oshiradi;
  • Qiymatlarni mos yozuvlar bo'yicha o'tkazish uchun kod yuqori oqimdan BC ga o'tkazildi, bekor funktsiyalarni qo'llab-quvvatlash qo'shildi va 36 gacha bo'lgan ibase qiymatlari bilan ishlash qobiliyati;
  • brctl da barcha buyruqlar psevdo-FS /sys yordamida ishga aylantirildi;
  • fsync va sync yordam dasturlari kodi birlashtirildi;
  • httpd ni amalga oshirish yaxshilandi. HTTP sarlavhalarini qayta ishlash va proksi rejimida ishlash yaxshilandi. MIME turlari ro'yxati SVG va JavaScript-ni o'z ichiga oladi;
  • "-c" opsiyasi "Loop qurilmasi bilan bog'liq fayl hajmini majburiy ikki marta tekshirish" ga qo'shildi, shuningdek, bo'limlarni skanerlash imkoniyati. mount va loop-control /dev/loop-control yordamida ishlashni qo'llab-quvvatlaydi;
  • Ntpd da SLEW_THRESHOLD qiymati 0.125 dan 0.5 gacha oshirildi;
  • sysctl-ga null qiymatlarni belgilash uchun qo'shilgan yordam;
  • Tomosha qilish uchun "-n SEC" opsiyasida kasr qiymatlari uchun qo'shimcha yordam qo'shildi;
  • Mdev-ni fon jarayoni sifatida ishlatish imkoniyati qo'shildi;
  • Wget yordam dasturi jurnalni yozish uchun faylni belgilash uchun "-o" bayrog'ini qo'llaydi. Yuklab olishning boshlanishi va tugashi haqida bildirishnomalar qo'shildi;
  • Telnetd-ga AYT IAC buyrug'i qo'shildi;
  • vi ga "dG" buyrug'i qo'shildi (mavzuni joriy satrdan fayl oxirigacha o'chirish);
  • dd buyrug'iga "oflag=append" opsiyasi qo'shildi;
  • Alohida mavzular uchun skanerlash rejimini yoqish uchun yuqori yordamchi dasturga "-H" bayrog'i qo'shildi.

Bundan tashqari, ikki hafta oldin amalga oshirildi reliz Toybox 0.8.1, 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 188 ta asosiy buyruqdan 220 tasi allaqachon amalga oshirilgan.

Toybox 0.8.1 innovatsiyalari orasida quyidagilarni ta'kidlashimiz mumkin:

  • Android-ni Toybox utilitlari asosidagi muhitda qurish uchun yetarli bo'lgan funksionallik darajasiga erishildi.
  • Yangi mcookie va devmem buyruqlari kiritilgan va qayta yozilgan tar, gunzip va zcat buyruqlari sinov bo'limidan ko'chiriladi.
  • Sinov uchun vi ning yangi ilovasi taklif qilindi.
  • Find buyrug'i endi "-wholename/-iwholename" parametrlarini qo'llab-quvvatlaydi.
    "-printf" va "-kontekst";

  • grepga "--exclude-dir" opsiyasi qo'shildi;
  • Echo endi "-E" variantini qo'llab-quvvatlaydi.
  • O'rnatish uchun "UUID" yordami qo'shildi.
  • Sana buyrug'i endi TZ muhit o'zgaruvchisida ko'rsatilgan vaqt mintaqasini hisobga oladi.
  • Nisbiy diapazonlar (+N) dan sedga qo'shildi.
  • Ps, yuqori va iotop chiqishining yaxshilangan o'qilishi.

Manba: opennet.ru

a Izoh qo'shish