Π Π΅Π»ΠΈΠ· минималистичного Π½Π°Π±ΠΎΡ€Π° систСмных ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ BusyBox 1.35

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ Ρ€Π΅Π»ΠΈΠ· ΠΏΠ°ΠΊΠ΅Ρ‚Π° BusyBox 1.35 с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Π½Π°Π±ΠΎΡ€Π° стандартных ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ UNIX, ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½Π½Ρ‹Ρ… Π² Π²ΠΈΠ΄Π΅ Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ исполняСмого Ρ„Π°ΠΉΠ»Π° ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… для минимального потрСблСния систСмных рСсурсов ΠΏΡ€ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π΅ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π° ΠΌΠ΅Π½Π΅Π΅ 1 Мб. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ выпуск Π½ΠΎΠ²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ 1.35 позиционируСтся ΠΊΠ°ΠΊ Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ, полная стабилизация Π±ΡƒΠ΄Π΅Ρ‚ обСспСчСна Π² вСрсии 1.35.1, которая оТидаСтся ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‡Π΅Ρ€Π΅Π· мСсяц. Код ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° распространяСтся ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ GPLv2.

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

BusyBox являСтся основным инструмСнтом Π² Π±ΠΎΡ€ΡŒΠ±Π΅ с Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ΠΌ GPL Π² ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ°Ρ…. ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Software Freedom Conservancy (SFC) ΠΈ Software Freedom Law Center (SFLC) ΠΎΡ‚ Π»ΠΈΡ†Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² BusyBox ΠΊΠ°ΠΊ Ρ‡Π΅Ρ€Π΅Π· суд, Ρ‚Π°ΠΊ ΠΈ ΠΏΡƒΡ‚Ρ‘ΠΌ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ внСсудСбных соглашСний Π½Π΅ΠΎΠ΄Π½ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ воздСйствовала Π½Π° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, Π½Π΅ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ доступ ΠΊ исходному ΠΊΠΎΠ΄Ρƒ GPL-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя Π°Π²Ρ‚ΠΎΡ€ BusyBox всячСски Π²ΠΎΠ·Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΡ‚ΠΈΠ² Ρ‚Π°ΠΊΠΎΠΉ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ — считая Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° Π»ΠΎΠΌΠ°Π΅Ρ‚ Π΅ΠΌΡƒ бизнСс.

Π’ вСрсии BusyBox 1.35 Π²Ρ‹Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ измСнСния:

  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π΅ find Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° опция «-samefile имя» для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ использованиСм Π² Ρ„Π°ΠΉΠ»Π΅ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ inode, Ρ‡Ρ‚ΠΎ ΠΈ Ρƒ Ρ„Π°ΠΉΠ»Π° с ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ. Π£Π½ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½ ΠΊΠΎΠ΄ для сравнСния Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΎΠΏΡ†ΠΈΠΈ «-amin», «-atime», «-cmin» ΠΈ «-ctime» для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ доступа ΠΈ создания Ρ„Π°ΠΉΠ»Π°.
  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ mktemp Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция «—tmpdir» для указания Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°, ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡŽΡ‚ΡΡ ΠΏΡƒΡ‚ΠΈ, связанныС с Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ.
  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ cpio Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΎΠΏΡ†ΠΈΠΈ «—ignore-devno» для игнорирования Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π½ΠΎΠΌΠ΅Ρ€Π° устройства (всСгда записываСтся 0) ΠΈ «—renumber-inodes» для пСрСнумСрования inode ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ΠΌ Π² Π°Ρ€Ρ…ΠΈΠ².
  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π΅ awk Π½Π°Π»Π°ΠΆΠ΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° выраТСния «printf %%».
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ ΠΎΠΊΠΎΠ»ΠΎ дСсятка ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ libbb. Π£Π»ΡƒΡ‡ΡˆΠ΅Π½Π° ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ realpath с Π°Π½Π°Π»ΠΎΠ³ΠΎΠΌ ΠΈΠ· Π½Π°Π±ΠΎΡ€Π° coreutils.
  • ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° большая порция исправлСний Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½Ρ‹Ρ… ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ°Ρ… ash ΠΈ hush, Π½Π°Ρ†Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π½Π° ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ совмСстимости с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ°ΠΌΠΈ. Π’ ash Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° bash-ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ERR trap, set -E ΠΈ $FUNCNAME, Π° Ρ‚Π°ΠΊΠΆΠ΅ ускорСно ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ строк ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ выраТСния «${s:}». Π’ ash ΠΈ hush ускорСно Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ «${x//\*/|}».
  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π΅ basename Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ ΠΎΠΏΡ†ΠΈΠΈ «-a» для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΈΠΌΡ‘Π½ ΠΏΡ€ΠΈ ΠΎΠ΄Π½ΠΎΠΌ Π²Ρ‹Π·ΠΎΠ²Π΅ ΠΈ «-s SUFFIX» для удалСния ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Ρ… символов «SUFFIX».
  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ blkdiscard Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция «-f» (force).
  • Π’ httpd ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π° ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² Last-Modified / ETag / Content-Length для страниц с ошибками.
  • Π’ httpd ΠΈ telnetd прСдоставлСна Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ измСнСния сСтСвого ΠΏΠΎΡ€Ρ‚Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.
  • Π’ tar устранСна ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ, приводящая ΠΊ Ρ€Π°ΡΡ…ΠΎΠ΄ΠΎΠ²Π°Π½ΠΈΡŽ всСй доступной памяти ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π°Ρ€Ρ…ΠΈΠ²ΠΎΠ² с ΠΎΡ‡Π΅Π½ΡŒ Π΄Π»ΠΈΠ½Π½Ρ‹ΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ².
  • Π’ ΠΊΠΎΠ΄Π΅ TLS ΠΏΠ΅Ρ€Π΅Π΄Π΅Π»Π°Π½Π° рСализация P256 ΠΈ x25519.
  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π΅ wget Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° опция «—post-file» для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ содСрТимоС Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Content-Type для ΠΎΠΏΡ†ΠΈΠΉ «—post-data» ΠΈ «—post-file».
  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ timeout Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠΏΡ†ΠΈΠΈ «-k KILL_SECS» для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ сигнала SIGKILL, Ссли ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π΅ Π·Π°Π²Π΅Ρ€ΡˆΠΈΠ»Π°ΡΡŒ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… KILL_SECS сСкунд.
  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ ip Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° установки ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° netns для устройств.
  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π΅ cal Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° опция «-m» для отобраТСния Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ мСсяца.
  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π°Ρ… date ΠΈ touch Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ смСщСния часового пояса Π² Π΄Π°Ρ‚Π°Ρ….
  • Π’ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ vi Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ„Π°ΠΉΠ»Π° ~/.exrc, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° «-c» ΠΈ EXINIT.
  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π΅ ed Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΊΠΎΠΌΠ°Π½Π΄ read/write ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½ Π² соотвСтствиС со спСцификациСй POSIX-1.2008. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠΏΡ†ΠΈΠΈ «-p».
  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ cmp Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция «-n N» для ограничСния сравнСния N-Π±Π°ΠΉΡ‚Π°ΠΌΠΈ.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, нСсколько Π΄Π½Π΅ΠΉ Π½Π°Π·Π°Π΄ состоялся Ρ€Π΅Π»ΠΈΠ· Toybox 0.8.6, Π°Π½Π°Π»ΠΎΠ³Π° BusyBox, Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ Π±Ρ‹Π²ΡˆΠΈΠΌ мэйнтСйнСром BusyBox ΠΈ распространяСмого ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ 0BSD. ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Toybox являСтся прСдоставлСниС производитСлям возмоТности использования минималистичного Π½Π°Π±ΠΎΡ€Π° стандартных ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ Π±Π΅Π· открытия исходных тСкстов ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². По возмоТностям Toybox ΠΏΠΎΠΊΠ° отстаёт ΠΎΡ‚ BusyBox, Π½ΠΎ ΡƒΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ 296 Π±Π°Π·ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄ (217 ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈ 83 частично) ΠΈΠ· 374 Π·Π°ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ….

Из Π½ΠΎΠ²ΡˆΠ΅ΡΡ‚Π² Toybox 0.8.6 ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ скриптов для создания систСмных ΠΎΠ±Ρ€Π°Π·ΠΎΠ², Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ sha256sum, sha224sum, sha384sum, sha512sum, linux32, strace ΠΈ hexdump. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ ΠΎΠΏΡ†ΠΈΠΈ «date -s», «pmap -p», «tail -F -s», «kill -0″, reboot/halt/poweroff -d», «tail —bytes —lines», «i2cdetect -q», «find -quit -lname -ilname -d», «cut -d $’\n'», «cut -nb», «cpio —ignore-devno —renumber-inodes», «tar —selinux», «split -n», «grep -L».

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru