Дек 24, 2014 - 0 Comments - Интересно -

Новая версия минималистичного набора системных утилит BusyBox 1.23

Представлен релиз пакета BusyBox 1.23.0 с реализацией набора стандартных утилит UNIX, оформленных в виде единого исполняемого файла и оптимизированных для минимального потребления системных ресурсов при размере комплекта менее 1 Мб. Первый выпуск новой ветки 1.23 позиционируется как нестабильный, полная стабилизация будет обеспечена в версии 1.23.1, которая ожидается примерно через месяц. Код проекта распространяется под лицензией GPLv2.

Модульный характер BusyBox даёт возможность сформировать один унифицированный исполняемый файл, содержащий в себе произвольный набор реализованных в пакете утилит (каждая утилита доступна в форме символической ссылки на данный файл). Размер, состав и функциональность коллекции утилит можно варьировать в зависимости от потребностей и возможностей встраиваемой платформы, для которой осуществляется сборка. Пакет самодостаточный, при статической сборке с uclibc для создания рабочей системы поверх ядра Linux требуется лишь создать несколько файлов-устройств в директории /dev и подготовить файлы конфигурации. По сравнению с прошлым выпуском 1.22.1 потребление оперативной памяти типовой сборкой BusyBox 1.23.0 увеличилось на 3 Кб (с 880918 до 883885 байт).


BusyBox является основным инструментом в борьбе с нарушением GPL в прошивках. Организации Software Freedom Conservancy (SFC) и Software Freedom Law Center (SFLC) от лица разработчиков BusyBox как через суд, так и путём заключения внесудебных соглашений неоднократно успешно воздействовала на компании, не предоставляющие доступ к исходному коду GPL-программ. Для производителей, которые не желают открывать исходные тексты модифицированных компонентов, в рамках проекта Toybox развивается аналог BusyBox, распространяемый под лицензией BSD (2 clause). По возможностям Toybox пока отстаёт от BusyBox.

Среди заметных улучшений:

  • Добавлены новые команды fatattr и unlink;
  • В ftpd добавлена поддержка аутентификации, обеспечен показ начинающихся с точки файлов в выводе команды LIST, добавлена поддержка команды XPWD;
  • В vi обеспечена поддержка отката изменений (undo);
  • Во wget добавлена поддержка https с использованием «openssl s_client»;
  • В df добавлена опция «-T» для вывода типа файловой системы;
  • В find добавлена поддержка конструкции ‘-exec … {} +’ и опции «-perm /BITS»;
  • Реализован фреймворк unit-tests для проведения unit-тестирования;
  • В crond добавлена возможность указания «SHELL=prog» в crontab, упрощён код для ведения лога;
  • В ash и hush увеличено качество случайных значений в переменной $RANDOM, реализована очистка переменной при выполнении «local VAR», добавлена поддержка unicode в выражении ${#var};
  • В awk решены проблемы с обработкой выражений «if … break ; else …»;
  • В ntpd добавлена поддержка чтения настроек из /etc/ntp.conf, добавлена опция «-I IFACE»;
  • В процессе init, при использовании системной библиотеки с поддержкой Unicode, обеспечено выполнение при запуске setlocale(LC_ALL, «»);
  • В утилите install реализована опция «-t DIR» для указания целевой директории;
  • В ip link добавлена поддержка «address ETHADDR»;
  • В libarchive добавлена поддержка распаковки в mem.buffer;
  • В man добавлен разбор списка директорий в $MANPATH и по умолчанию применена кодировка ascii;
  • В sendmail параметр «-f» переведён в число опциональных (по умолчанию в качестве отправителя указывается текущий логин и домен);
  • В tftpd добавлена поддержка полных 512-байтовых запросов;
  • В xargs добавлена поддержка опций «-I» и «-i» для замены строк;
  • В ping добавлена опция «-p» для указания шаблона заполнения 16-байтовой области данных в пакете;
  • В udhcp добавлена поддержка префикса PXELINUX и возможность тонкой настройки arpping;
  • В ifupdown добавлена поддержка семейства адресов ‘link’;
  • В wapon добавлена опция «-d» для включения поддержки discard;
  • В su обеспечена задержка после ввода неправильного пароля;
  • Переписана реализация команды which.


Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Человек ? *