BusyBox 中文文档 下载 App

BusyBox GPL v2 许可证合规说明

许可证类型

BusyBox 使用 GNU General Public License v2(GPLv2) 协议发布。这是 FSF(自由软件基金会)维护的开源许可证之一,核心要求是相同方式共享——修改后发布的代码必须以相同协议公开。

BusyBox 的版权持有者是多个贡献者(最初 Bruce Perens,后来 Denys Vlasenko 等),GPL 执行由 Software Freedom Conservancy 代理。如果你发现 GPL 违规,可以写信到 gpl@busybox.net 报告。

对你意味着什么

情况一:下载使用预编译二进制(大多数人)

几乎没限制。GPL 只要求分发代码的人提供源码。你:

情况二:直接编译后不修改(OEM 厂商)

你的产品 → 用原始 BusyBox 编译的二进制

需要做:

情况三:修改了 BusyBox 源码(定制厂商)

你的产品 → 修改后的 BusyBox 二进制

需要做:

情况四:把 BusyBox 集成到你的项目里(嵌入式系统)

你的根文件系统 → BusyBox + 内核 + 你的应用

需要做:

不需要担心的情况

以下场景不需要公开任何代码:

常见误区

误区:GPL 会传染我的闭源应用

GPL 是文件级(或程序级)传染,不是目录级、不是系统级传染。你的闭源应用和 BusyBox 在同一个根文件系统里,应用本身不会因此变成 GPL——只要你的应用没有直接链接 BusyBox 的源代码,也不是基于它修改的。

误区:用了 BusyBox init,我的整个启动流程都必须开源

你写的 inittab、rcS 脚本、其他启动脚本是你自己的作品。GPL 只要求公开 BusyBox 本身的源码。即使这些脚本和 BusyBox 二进制放在同一个目录下,脚本也不受 GPL 约束(除非脚本里嵌入了 BusyBox 源代码)。

误区:BusyBox Pro(Android 应用)使用了 BusyBox,所以它必须开源

BusyBox Pro 是一个独立的 Android 应用,它链接/打包了 BusyBox 二进制作为资源。按照 GPLv2,它需要提供 BusyBox 源码获取途径,但 BusyBox Pro 应用本身的代码(Java/Kotlin)不受 GPL 约束——除非项目选择以 GPL 发布整个应用。

合规清单(嵌入式产品)

在发布包含 BusyBox 的产品时,检查清单:

遵守 GPL 很简单——给出去,拿回来。你用了别人的开源代码,提供源码给你的客户就行。

更多信息