BusyBox 1.34 软件包的发布提供了一组标准 UNIX 实用程序的实现,这些实用程序被设计为单个可执行文件,并针对系统资源消耗最小化进行了优化,集合大小小于 1 MB。 新的 1.34 分支的第一个版本定位为不稳定;完全稳定的版本将在 1.34.1 版本中提供,预计一个月左右。 项目代码根据 GPLv2 许可证分发。
BusyBox 的模块化特性使得创建一个统一的可执行文件成为可能,该文件包含在包中实现的任意一组实用程序(每个实用程序都以该文件的符号链接的形式提供)。 实用程序集合的大小、组成和功能可以根据正在执行组装的嵌入式平台的需求和功能而变化。 该软件包是独立的;当使用 uclibc 静态构建时,要在 Linux 内核之上创建一个工作系统,您只需在 /dev 目录中创建几个设备文件并准备配置文件。 与之前的版本 1.33 相比,典型 BusyBox 1.34 程序集的 RAM 消耗增加了 9620 字节(从 1032724 字节增加到 1042344 字节)。
BusyBox 是对抗固件中 GPL 违规行为的主要工具。 软件自由保护协会 (SFC) 和软件自由法律中心 (SFLC) 代表 BusyBox 开发者,通过法院和外部渠道,多次成功地影响了那些不提供 GPL 程序源代码访问权限的公司。 - 法院协议。 与此同时,BusyBox 的作者强烈反对这种保护——认为这会毁了他的生意。
BusyBox 1.34 中突出显示了以下更改:
- 添加了一个新的 ascii 实用程序,其中包含 ASCII 字符名称的交互式表。
- 添加了用于计算校验和的新实用程序 crc32。
- 内置http服务器支持DELETE、PUT和OPTIONS方法。
- Udhcpc 提供更改默认网络接口名称的功能。
- TLS 协议的实现现在支持椭圆曲线 secp256r1 (P256)
- ash 和 hush 命令 shell 的开发仍在继续。 安静地说,^D 命令的处理已与 ash 和 bash 的行为保持一致,已实现特定于 bash 的 $'str' 构造,并且已实现 ${var/pattern/repl} 替换操作优化。
- awk 实用程序的实现已进行了大量修正和改进。
- 向 Base32 和 Base64 实用程序添加了“-i”选项以忽略无效字符。
- 在 bc 和 dc 实用程序中,BC_LINE_LENGTH 和 DC_LINE_LENGTH 环境变量的处理与 GNU 实用程序接近。
- 向 blockdev 实用程序添加了 --getra 和 --setra 选项。
- “-p”选项已添加到 chattr 和 lsattr 实用程序中。 lsattr 扩展了支持的 ext2 FS 标志的数量。
- 选项“-n”(禁用覆盖)和“-t DIR”(指定目标目录)已添加到 cp 实用程序中。
- 在 cpio 中,调整了结构“cpio -d -p A/B/C”。
- “-t TYPE”选项已添加到 df 实用程序中(将输出限制为特定文件类型)。
- 向 du 实用程序添加了 -b 选项(相当于“—apparent-size —block-size=1”)。
- 向 env 实用程序添加了选项“-0”(以代码零的字符终止每一行)。
- “-h”选项(可读输出)已添加到免费实用程序中。
- 向 ionice 实用程序添加了选项“-t”(忽略故障)。
- 登录实用程序现在支持 LOGIN_TIMEOUT 环境变量。
- 向 mv 实用程序添加了选项“-t”(指定要移动的目标目录)和“-T”(将第二个参数视为文件)。
- shred 实用程序中添加了“-s SIZE”选项(要清除的字节数)。
- “-a”选项已添加到任务集实用程序中(对所有进程线程应用 CPU 关联性)。
- timeout、top、watch 和 ping 实用程序现在支持非整数值 (NN.N)。
- “-z”选项已添加到 uniq 实用程序中(使用零编码字符作为分隔符)。
- “-t”选项(存档检查)已添加到解压缩实用程序中。
- vi 编辑器允许在 ':s' 命令中使用正则表达式。 添加了展开选项卡选项。 改进了在段落之间移动、选择范围和撤消更改的实现。
- xxd 实用程序实现 -i(C 风格输出)和 -o DISPLAYOFFSET 选项。
- wget 实用程序允许处理重定向的 HTTP 307/308 代码。 添加了 FEATURE_WGET_FTP 选项以启用/禁用 FTP 支持。
- 向 dd 实用程序添加了“iflag=count_bytes”选项。
- cut 实用程序实现了玩具盒兼容选项“-O OUTSEP”、“-D”和“-F LIST”。
来源: opennet.ru