Keluaran set utiliti sistem minimalis BusyBox 1.31

Dikemukakan oleh keluaran pakej BusyBox 1.31 dengan pelaksanaan satu set utiliti UNIX standard, direka bentuk sebagai fail boleh laku tunggal dan dioptimumkan untuk penggunaan minimum sumber sistem dengan saiz set kurang daripada 1 MB. Keluaran pertama cawangan baharu 1.31 diletakkan sebagai tidak stabil, penstabilan penuh akan disediakan dalam versi 1.31.1, yang dijangka dalam masa sebulan. Kod projek diedarkan di bawah lesen GPLv2.

ΠœΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹ΠΉ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ BusyBox Π΄Π°Ρ‘Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΡƒΠ½ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ исполняСмый Ρ„Π°ΠΉΠ», содСрТащий Π² сСбС ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π² ΠΏΠ°ΠΊΠ΅Ρ‚Π΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ (каТдая ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° доступна Π² Ρ„ΠΎΡ€ΠΌΠ΅ символичСской ссылки Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ»). Π Π°Π·ΠΌΠ΅Ρ€, состав ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ ΠΌΠΎΠΆΠ½ΠΎ Π²Π°Ρ€ΡŒΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² зависимости ΠΎΡ‚ потрСбностСй ΠΈ возмоТностСй встраиваСмой ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ осущСствляСтся сборка. ΠŸΠ°ΠΊΠ΅Ρ‚ самодостаточный, ΠΏΡ€ΠΈ статичСской сборкС с uclibc для создания Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ систСмы ΠΏΠΎΠ²Π΅Ρ€Ρ… ядра Linux трСбуСтся лишь ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ нСсколько Ρ„Π°ΠΉΠ»ΠΎΠ² устройств Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ /dev ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. По ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΏΡ€ΠΎΡˆΠ»Ρ‹ΠΌ выпуском 1.30 ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти Ρ‚ΠΈΠΏΠΎΠ²ΠΎΠΉ сборкой BusyBox 1.31 ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΠ»ΠΎΡΡŒ Π½Π° 86 Π±Π°ΠΉΡ‚ (с 1008478 Π΄ΠΎ 1008392 Π±Π°ΠΉΡ‚).

BusyBox ialah alat utama dalam memerangi pelanggaran GPL dalam perisian tegar. Software Freedom Conservancy (SFC) dan Software Freedom Law Centre (SFLC) bagi pihak pembangun BusyBox, kedua-duanya melalui mahkamah, dan dengan cara ini kesimpulan perjanjian di luar mahkamah telah berulang kali berjaya mempengaruhi syarikat yang tidak menyediakan akses kepada kod sumber program GPL. Pada masa yang sama, pengarang BusyBox melakukan yang terbaik untuk objek terhadap perlindungan sedemikian - mempercayai bahawa ia merosakkan perniagaannya.

Perubahan berikut diserlahkan dalam BusyBox 1.31:

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π½ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹: ts (рСализация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ сСрвСра для ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° TSP (Time-Stamp Protocol)) ΠΈ i2ctransfer (созданиС ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° сообщСний I2C);
  • Π’ udhcp Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠΏΡ†ΠΈΠΉ DHCP 100 (свСдСния ΠΎ часовом поясС) ΠΈ 101 (Π½Π°Π·Π²Π°Π½ΠΈΠ΅ часового пояса Π² Π‘Π” TZ) для IPv6;
  • Π’ udhcpd Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° статичСских привязок ΠΈΠΌΡ‘Π½ хостов ΠΊ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌ;
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Π½Ρ‹Ρ… ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ°Ρ… ash ΠΈ hush Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ числовыС Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ Β«BASE#nnnnΒ». ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° ΠΊ совмСстимости с bash рСализация ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ulimit, Π² Ρ‚ΠΎΠΌ числС Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΎΠΏΡ†ΠΈΠΈ Β«-i RLIMIT_SIGPENDINGΒ» ΠΈ Β«-q RLIMIT_MSGQUEUEΒ». Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Β«wait -nΒ». Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ совмСстимыС с bash ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ EPOCH;
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ΅ hush Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° пСрСмСнная Β«$-Β«, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ пСрСчислСны Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΎΠΏΡ†ΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ;
  • Π’ bc ΠΈΠ· upstream пСрСнСсён ΠΊΠΎΠ΄ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠΎ ссылкС, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° void-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со значСниями ibase Π΄ΠΎ 36;
  • Π’ brctl всС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½Ρ‹ Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ с использованиСм псСвдо-Π€Π‘ /sys;
  • ΠžΠ±ΡŠΠ΅Π΄ΠΈΠ½Ρ‘Π½ ΠΊΠΎΠ΄ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ fsync ΠΈ sync;
  • Π£ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π½Π° рСализация httpd. Π£Π»ΡƒΡ‡ΡˆΠ΅Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° HTTP-Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ прокси. Π’ список MIME-Ρ‚ΠΈΠΏΠΎΠ² Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ SVG ΠΈ JavaScript;
  • Π’ losetup Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция Β«-cΒ» (ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Ρ„Π°ΠΉΠ»Π°, связанного c loop-устройством), Π° Ρ‚Π°ΠΊΠΆΠ΅ опция для сканирования Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ². Π’ mount ΠΈ losetup обСспСчСна ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ с использованиСм /dev/loop-control;
  • Π’ ntpd Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ SLEW_THRESHOLD ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΎ с 0.125 Π΄ΠΎ 0.5;
  • Π’ sysctl Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° присвоСния пустых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ;
  • Π’ watch Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π΄Ρ€ΠΎΠ±Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² ΠΎΠΏΡ†ΠΈΠΈ Β«-n SECΒ»;
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ запуска mdev Π² Ρ„ΠΎΡ€ΠΌΠ΅ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ³ΠΎ процСсса;
  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π΅ wget Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Ρ„Π»Π°Π³ Β«-oΒ» для опрСдСлСния Ρ„Π°ΠΉΠ»Π° для записи Π»ΠΎΠ³Π°. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ увСдомлСния ΠΎ Π½Π°Ρ‡Π°Π»Π΅ ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ;
  • Π’ telnetd Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ AYT IAC;
  • Π’ vi Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° β€˜dG'(ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ содСрТимого ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строки Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° Ρ„Π°ΠΉΠ»Π°);
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ dd Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция β€˜oflag=append’;
  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ top Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Ρ„Π»Π°Π³ β€˜-H’ для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ€Π΅ΠΆΠΈΠΌΠ° сканирования ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ².

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π΄Π²Π΅ Π½Π΅Π΄Π΅Π»ΠΈ Π½Π°Π·Π°Π΄ mengambil tempat melepaskan Kotak Mainan 0.8.1, analog BusyBox, dibangunkan oleh bekas penyelenggara BusyBox dan diedarkan di bawah lesen BSD. Tujuan utama Toybox adalah untuk menyediakan pengeluar dengan keupayaan untuk menggunakan set minimalistik utiliti standard tanpa membuka kod sumber komponen yang diubah suai. Mengikut keupayaan Toybox setakat ini ketinggalan ΠΎΡ‚ BusyBox, Π½ΠΎ ΡƒΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ 188 Π±Π°Π·ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈΠ· 220 Π·Π°ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ….

Daripada inovasi Toybox 0.8.1 adalah mungkin untuk diperhatikan:

  • Достигнут ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, достаточный для сборки Android Π² ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ Π½Π° Π±Π°Π·Π΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ Toybox.
  • Π’ состав Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π½ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ mcookie ΠΈ devmem, ΠΈΠ· тСстовой Π²Π΅Ρ‚ΠΊΠΈ пСрСнСсСны пСрСписанныС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ tar, gunzip ΠΈ zcat.
  • Для тСстирования ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° новая рСализация vi.
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ find Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠΏΡ†ΠΈΠΉ Β«-wholename/-iwholenameΒ»,
    Β«-printfΒ» ΠΈ Β«-contextΒ»;

  • Π’ grep Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция Β«β€”exclude-dirΒ»;
  • Π’ echo появилась ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠΏΡ†ΠΈΠΈ Β«-EΒ».
  • Π’ mount Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Β«UUIDΒ».
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ date Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΡƒΡ‡Ρ‘Ρ‚ часового пояса, Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ окруТСния TZ.
  • Π’ sed Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠ² (+N).
  • Π£Π»ΡƒΡ‡ΡˆΠ΅Π½Π° Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄Π° ps, top ΠΈ iotop.

Sumber: opennet.ru

Tambah komen