查看“︁Busybox”︁的源代码
←
Busybox
跳转到导航
跳转到搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
== 源代码 == === 主要 === https://git.busybox.net/busybox === 备用 === https://github.com/mirror/busybox.git == 说明 == busybox可提供许多UNIX工具(多数是简化版,提供基础的功能),而只需要一个单文件(可使用软连接指向busybox以创建busybox支持的命令)。 busybox常用于存储比较受限的系统,如在Flash的嵌入式系统。 优点是体积小缺点是只支持基本功能。 == 相关Linux发行版/工具 == * [http://www.tinycorelinux.net/ tinycorelinux]:一个体积极小的Linux系统项目。作用类似Windows的PE,主要运行一些维护工具或者黑客工具(如WIFI破解)。注意:工具需要自行集成或者下载修改好的镜像。 *[https://www.slitaz.org slitaz]:安全、高性能的Linux操作系统。 * [https://www.alpinelinux.org/ alpine]:一个基于musl libc与busybox的安全导向的轻量Linux发行版。主要用于docker镜像。 *[[openwrt]]:操作系统。一般用于路由器方案,为减小rootfs体积大小默认采用musl libc+busybox,也可使用glibc+busybox。 *[[buildroot]]:嵌入式Linux构建工具。可创建基于busybox的rootfs,也可创建使用systemd作为init的系统。 以上发行版/工具可用于测试busybox或者参考他们的文件系统。 == 基本文件系统 == === 目录 === 一般情况下,若要挂载各种文件系统则需要目录存在,故需要预先创建一个基本的目录结构。 以下目录为约定俗成的Linux最小根目录(保证正常启动及应用执行,不包含编译环境等): {| class="wikitable" !目录 !说明 |- |/bin |二进制可执行文件目录,系统级(一般是启动相关)二进制文件。注意:包括可执行的脚本文件。 |- |/boot |启动文件目录,包含内核、设备树、Bootloader相关配置文件。 |- |/dev |设备文件目录,此目录一般挂载为tmpfs,在busybox为主的根目录中一般由mdev管理。 |- |/etc |配置文件目录,一般情况下应用程序的配置文件均存放在此目录。 |- |/home |非root用户家目录。若无其他用户则不需要。 |- |/lib |库文件目录。 |- |/lib/modules/ |对于Linux而言,为内核模块目录。 |- |/lib/firmware/ |对于Linux而言,为固件目录。 |- |/proc |proc文件系统挂载目录。十分关键,若不挂载可能导致部分应用不可执行。 |- |/root |root用户家目录。 |- |/run |运行目录。主要存放如pid文件、unix文件socket文件、管道文件等,一般用于ipc。可挂载为tmpfs. |- |/sbin |特权(需要root执行)二进制可执行文件目录,系统级(一般是启动相关)二进制文件。注意:包括可执行的脚本文件。 |- |/sys |sysfs文件系统挂载目录。十分关键,若不挂载可能导致部分应用不可执行。 |- |/tmp |临时文件目录。一般挂载为tmpfs,在根文件系统可读写情况下也可不挂载tmpfs. |- |/usr |unix软件资源。非系统级文件级(启动无关,通常是应用)文件目录,包括但不限于二进制可执行文件、二进制库文件、应用共享文件等,其目录结构与/相似。 |- |/usr/bin |类似/bin |- |/usr/sbin |类似/sbin |- |/usr/lib |类似/lib,但只包含库文件,不包含Linux内核模块与固件文件。 |- |/usr/local |本地文件目录,目录结构类似/usr(不包含local目录),一般用于存放本地编译的程序(配置文件、二进制文件等)。 |- |/usr/share |共享文件目录,存放应用可共享给其他应用的文件(如man手册等)。对GUI应用而言,此目录包含各种GUI资源。 |- |/var |可变文件目录。主要存放日志、缓存、可变资源文件(如网站数据、数据库数据)等。 |} === init程序 === 通常是/init与/sbin/init,也可使用init=指定其它文件。在busybox为主的根目录中一般使用软链接将/init与/sbin/init指向/bin/busybox。 == 笔记 == === /dev/创建与更新 === 除了系统调用、proc文件系统、sysfs文件系统之外,在Linux应用打交道最多的便是/dev/,对于使用busybox作为init的系统而言,通常使用mdev作为创建/dev/与维护/dev的工具。 在启动时需要使用<code>mdev -s</code> 创建/dev,使用<code>echo /sbin/mdev >/proc/sys/kernel/hotplug</code> 设置在设备热插拔时更新/dev。 注意:在最新版Linux内核中可启用devtmpfs自动挂载一个/dev。 == 官方资料 == 网址:https://www.busybox.net 二进制文件下载:https://busybox.net/downloads/binaries/
返回
Busybox
。
导航菜单
个人工具
登录
命名空间
页面
讨论
大陆简体
查看
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
工具
链入页面
相关更改
特殊页面
页面信息