busybox
官网 源码
官网:https://busybox.net/
busybox-1.32.0.tar.bz2
编译 安装
见 INSTALL
源码分析
init/init.c
graph LR
a("main()")-->b["console_init()"]
a-->c["putenv((char *) SHELL=/bin/sh)"]
a-->d["parse_inittab()"]
d-->e["new_init_action(/etc/init.d/rcS)"]
a-->f["run_actions(/etc/init.d/rcS)"]
a-->g["while (1)"]
通过分析 busybox 初始化流程,可以知道在两个地方可以定制初始化过程:/etc/inittab、/etc/init.d/rcS。
交叉编译
arm-linux-gcc4.4.3编译busybox-1.25.0