Новая версия минималистичного набора системных утилит BusyBox 1.23
24 декабря 2014 года
Представлен релиз пакета 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.
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.