BusyBox 中文文档 下载 App

make menuconfig 图形化配置 BusyBox 的正确姿势

配置系统概述

BusyBox 使用与 Linux 内核相同的 Kconfig 配置系统,配置项存放在源码根目录的 .config 文件中。三种常用入口:

命令行为
make menuconfig进入 ncurses 图形界面,手动逐个开关
make defconfig加载 BusyBox 官方推荐的默认配置(约 1.1MB)
make allyesconfig开启所有可启用的 Applet 和功能(约 1.9MB)
make allnoconfig关闭一切,从空白开始

新手推荐:先 make defconfig,再 make menuconfig 在默认基础上逐步裁剪;不要从 allnoconfig 开始手选,很容易漏依赖。

menuconfig 界面基础操作

┌──────────── BusyBox Configuration ────────────┐
│  Arrow keys navigate the menu.                │
│  <Enter> selects submenus ---> (or empty menus)│
│  Highlighted letters are hotkeys.              │
│  Pressing <Y> includes, <N> excludes, <M> mods │
│  Press <Esc><Esc> to exit, <?> for Help, </>   │
│  to Search. Legend: [*] built-in  [ ] excluded │
│  < > module capable (not applicable here)      │
└───────────────────────────────────────────────┘

常用操作:

顶层菜单结构

BusyBox menuconfig 的顶层菜单按功能分组:

Build Options — 编译相关选项

Coreutils — 文件和文本操作工具

Shells — Shell 相关

Networking Utilities — 网络工具

System Logging Utilities — 日志相关

Linux System Utilities — 系统管理

实用裁剪策略

嵌入式路由器场景(参考 OpenWrt):

最小 initramfs 场景(紧急救援):

Docker 极简镜像场景:

依赖关系

某些 Applet 有依赖。menuconfig 会自动维护依赖图:启用 A 时自动启用它依赖的 B;禁用 B 时提示"这会关闭 N 个依赖它的选项"。不要手动去 .config 文件里改,容易搞出不一致状态。

搜索功能 </> 特别有用——当你不确定某个功能在哪个子菜单里时,直接搜关键字跳过去。