BusyBox 的模块化特性使得创建一个统一的可执行文件成为可能,该文件包含在包中实现的任意一组实用程序(每个实用程序都以该文件的符号链接的形式提供)。 实用程序集合的大小、组成和功能可以根据正在执行组装的嵌入式平台的需求和功能而变化。 该软件包是独立的;当使用 uclibc 静态构建时,要在 Linux 内核之上创建一个工作系统,您只需在 /dev 目录中创建几个设备文件并准备配置文件。 与之前的版本 1.31 相比,典型 BusyBox 1.32 程序集的 RAM 消耗增加了 3590 字节(从 1011750 字节增加到 1015340 字节)。
BusyBox 是对抗固件中 GPL 违规行为的主要工具。 软件自由保护协会 (SFC) 和软件自由法律中心 (SFLC) 代表 BusyBox 开发者,均通过
BusyBox 1.32 中突出显示了以下更改:
- 添加了新命令
我 从给定的 Mimfile 运行skipts(有点让人想起精简的 make 实用程序); - find 实用程序添加了“-empty”选项来检查空文件;
- 在 wget 实用程序中,扩展了重定向数量的限制,并实现了对使用 ENABLE_FEATURE_WGET_OPENSSL 检查 TLS 证书的支持;
- 向 grep 添加了对模式列表 (pattern_list) 的正确支持,并添加了“-R”选项(目录内容的递归处理);
- 解决了在 Clang 9 中构建时出现的问题并消除了编译器警告;
- 针对 ash 和 hush 命令 shell 提出了大量修复,旨在提高与其他 shell 的兼容性。 ash 和 hush 中添加了使用选项卡自动完成内置命令的功能。 新的内置命令已在 ash 中稳定下来。
- fdisk 实用程序现在支持 HFS 和 HFS+ 分区;
- init 改进了接收信号时对竞争条件的处理;
- 用于系统参数可视化监控的实用程序
纳米米 添加了输出格式“%NT”(时间与零对齐); - 任务集中添加了处理和显示 CPU 列表的功能(选项“-c”);
- 在 tar 中,“-a”选项的行为已更改,它不再启用“lzma”压缩,而是与文件扩展名的自动检测相关联;
- Udhcpc6 添加了对“
无国籍 » 对于 DHCPv6(服务器仅发送网络参数,不分配地址); - nslookup 现在支持处理没有 RR 记录的响应,并添加了对 SRV 记录的支持;
- brctl 中添加了新命令“showmacs”和“showstp”;
- 添加了对dhcpc“中继服务器”参数的支持;
- 为 syslogd 添加了以毫秒精度显示时间的设置;
- 在httpd中,当以NOMMU模式运行时,允许设置不同的主目录,并且“-h”选项在运行后台进程时起作用;
- xargs 改进了对引号中的参数的处理,并确保“-n”选项的正确行为;
- 修复了 grep、top、dc、gzip、awk、bc、ntpd、pidof、stat、telnet、tftp、whois、unzip、chgrp、httpd、vi、路由实用程序中的错误。
还有,上个月
在 Toybox 0.8.3 的创新中,我们可以注意到:
- 添加了新命令 rtcwake、blkdiscard、getopt 和 readelf;
- “make root”提供了创建仅基于 Linux 内核和 Toybox 实用程序的工作引导环境的能力,可以使用其自己的 init 脚本加载;
- 添加了对具有单独实现的实用程序(未包含在主 ToyBox 中)的模块的初始支持;
- 命令解释器 toysh 已准备就绪 80%(尚不支持函数、历史记录、终端管理、作业、$((math))、模板);
- 添加了对各种实用程序的附加选项的支持,包括 patch、cal、cp、mv、lsattr、chattr、ls、id、netcat 和 setsid。
来源: opennet.ru