文章目录
- 简介
- 官网
- 源码目录结构
- 构建
简介
BusyBox 将许多具有共性的小版本的UNIX工具结合到一个单一的可执行文件。这样的集合可以替代大部分常用工具比如的GNU fileutils , shellutils等工具,BusyBox提供了一个比较完善的环境,可以适用于任何小的嵌入式系统。
官网
https://busybox.net/
源码目录结构
序号 | 目录名称 | 功能说明 |
---|---|---|
1 | applets | 实现applets框架的文件。目录中包含了几个main()的文件 |
2 | applets_sh | 此目录包含了几个作为shell脚本实现的applet示例。在“make install”时不会被自动安装,需要使用时,手动处理 |
3 | arch | 包含用于不同体系架构的makefile文件。约束busybox在不同架构体系下的编译构建过程 |
4 | archival | 与压缩相关命令的实现源文件。 |
5 | configs | busybox自带的默认配置文件 |
6 | console-tools | 与控制台相关的一些命令 |
7 | coreutils | 常用的一些核心命令。例如chgrp、rm等 |
8 | debianutils | 针对Debian的套件。 |
9 | e2fsprogs | 针对Linux Ext2 FS prog的命令。例如chattr、lsattr |
10 | editors | 常用的编辑命令。例如diff、vi等 |
11 | findutils | 用于查找的命令 |
12 | include | busybox项目的头文件 |
13 | init | init进程的实现源码目录 |
14 | klibc-utils | klibc命令套件 |
15 | libbb | 与busybox实现相关的库文件 |
16 | libpwdgrp | libpwdgrp相关的命令 |
17 | loginutils | 与用户管理相关的命令 |
18 | mailutils | 与mail相关的命令套件 |
19 | miscutils | 该文件下是一些杂项命令,针对特定应用场景 |
20 | modutils | 与模块相关的命令 |
21 | networking | 与网络相关的命令,例如arp |
22 | printutils | Print相关的命令 |
23 | procps | 与内存、进程相关的命令 |
24 | runit | 与Runit实现相关的命令 |
25 | shell | 与shell相关的命令 |
26 | sysklogd | 系统日志记录工具相关的命令 |
27 | util-linux | Linux下常用的命令,主要与文件系统操作相关的命令。 |
构建
make menuconfig # This creates a file called ".config"make # This creates the "busybox" executablemake install # or make CONFIG_PREFIX=/path/from/root install