Релиз минималистичного набора системных утилит BusyBox 1.24
Представлен релиз пакета BusyBox 1.24.0 с реализацией набора стандартных утилит UNIX, оформленных в виде единого исполняемого файла и оптимизированных для минимального потребления системных ресурсов при размере комплекта менее 1 Мб. Первый выпуск новой ветки 1.24 позиционируется как нестабильный, полная стабилизация будет обеспечена в версии 1.24.1, которая ожидается примерно через месяц. Код проекта распространяется под лицензией GPLv2.
Модульный характер BusyBox даёт возможность сформировать один унифицированный исполняемый файл, содержащий в себе произвольный набор реализованных в пакете утилит (каждая утилита доступна в форме символической ссылки на данный файл). Размер, состав и функциональность коллекции утилит можно варьировать в зависимости от потребностей и возможностей встраиваемой платформы, для которой осуществляется сборка. Пакет самодостаточный, при статической сборке с uclibc для создания рабочей системы поверх ядра Linux требуется лишь создать несколько файлов-устройств в директории /dev и подготовить файлы конфигурации. По сравнению с прошлым выпуском 1.23.2 потребление оперативной памяти типовой сборкой BusyBox 1.24.0 увеличилось на 9 Кб (с 867884 до 876954 байт).
BusyBox является основным инструментом в борьбе с нарушением GPL в прошивках. Организации Software Freedom Conservancy (SFC) и Software Freedom Law Center (SFLC) от лица разработчиков BusyBox как через суд, так и путём заключения внесудебных соглашений неоднократно успешно воздействовала на компании, не предоставляющие доступ к исходному коду GPL-программ. Для производителей, которые не желают открывать исходные тексты модифицированных компонентов, в рамках проекта Toybox развивается аналог BusyBox, распространяемый под лицензией BSD (2 clause). По возможностям Toybox пока отстаёт от BusyBox.
Основные новшества BusyBox 1.24:
- Добавлена утилита truncate;
- Добавлена утилита uevent;
- Добавлены утилиты i2cget, i2cset, i2cdetect, i2cdump;
- В gzip добавлена поддержка с 4 по 9 уровней сжатия;
- В vi реализация отката изменений (undo) теперь не привязана к yankmark;
- Код ntpd переведён на ISC-совместимую лицензию;
- В dd добавлена опциональная поддержка status=noxfer/none;
- В adduser добавлена поддержка опции "-k /path/to/skel";
- В deluser добавлена опция --remove-home и обеспечено корректное удаление пользователя из /etc/group;
- В dpkg расширено число поддерживаемых методов сжатия;
- Ускорена работа утилиты gzip;
- В ls устранена проблема 9999 года :)
- В route улучшена поддержка IPv6;
- В sed добавлена поддержка конца диапазона ",+N";
- В sync добавлена поддержка опций "-d -f FILE";
- В unzip устранена уязвимость, связанная с подстановкой некорректных имён файлов;
- Во wget обеспечена возможность сборки без поддержки openssl/ssl_helper;
- В mount добавлена опция "-T OTHERTAB";
- Улучшена совместимость с системной библиотекой Bionic, используемой в платформе Android;
- В ubiattach добавлена опция "-O";
- В dmesg добавлена опция "-r" для вывода лога в raw-формате даже при активном режиме FEATURE_DMESG_PRETTY;
- В modprobe добавлена поддержка передачи модулям аргументов, содержащих пробелы;
- В swaponoff добавлена опция "-e".
© OpenNet