Busybox是什么?
1,busybox简介
busybox是一个集成了一百多个最常用linux命令和工具的软件,他甚至还集成了一个http服务器和一个telnet服务器,而所有这一切功能却只有区区1M左右的大小.我们平时用的那些linux命令就好比是分立式的电子元件,而busybox就好比是一个集成电路,把常用的工具和命令集成压缩在一个可执行文件里,功能基本不变,而大小却小很多倍,在嵌入式linux应用中,busybox有非常广的应用,另外,大多数linux发行版的安装程序中都有busybox的身影,安装linux的时候案ctrl+alt+F2就能得到一个控制台,而这个控制台中的所有命令都是指向busybox的链接.
Busybox的小身材大作用的特性,给制作一张软盘的linux带来了及大方便.
2,busybox的用法
可以这样用busybox
#busybox ls
他的功能就相当运行ls命令
最常用的用法是建立指向busybox的链接,不同的链接名完成不同的功能.
#ln -s busybox ls
#ln -s busybox rm
#ln -s busybox mkdir
然后分别运行这三个链接:
#./ls
#./rm
#./mkdir
就可以分别完成了ls rm 和mkdir命令的功能.虽然他们都指向同一个可执行程序busybox
但是只要链接名不同,完成的功能就不同,busybox就是这么的神奇.
很多linux网站都提供busybox的源代码下载.目前版本是busybox1.0正式版.
3,配置busybox
busybox的配置程序和linux内核菜单配置方式简直一模一样.熟悉用make menuconfig方式配置linux内核的朋友很容易上手.
#cp busybox-1.00.tar.gz /babylinux
#cd /babylinux
#tar xvfz busybox-1.00.tar.gz
#cd busybox-1.00
#make menuconfig
下面是需要编译进busybox的功能选项,其他的可以根据需要自选,但是同样不要太贪心.
General Configuration应该选的选项
Show verbose applet usage messages
Runtime SUID/SGID configuration via /etc/busybox.conf
Build Options
Build BusyBox as a static binary (no shared libs)
这个选项是一定要选择的,这样才能把busybox编译成静态链接的可执行文件,运行时才独立于其他函数库.否则必需要其他库文件才能运行,在单一个linux内核不能使他正常工作.
Installation Options
Don't use /usr
这个选项也一定要选,否则make install 后busybox将安装在原系统的/usr下,这将覆盖掉系统原有的命令.选择这个选项后,make install后会在busybox目录下生成一个叫_install的目录,里面有busybox和指向他的链接.
其他选项都是一些linux基本命令选项,自己需要哪些命令就编译进去,一般用默认的就可以了.
配置好后退出并保存.
4,编译并安装busybox
#make
#make install
编译好后在busybox目录下生成子目录_install,里面的内容:
drwxr-xr-x 2 root root 4096 11月 24 15:28 bin
lrwxrwxrwx 1 root root 11 11月 24 15:28 linuxrc -> bin/busybox
drwxr-xr-x 2 root root 4096 11月 24 15:28 sbin
其中可执行文件busybox在bin目录下,其他的都是指向他的符号链接.
我编译出来的busybox可执行文件是935K,加上符号链接,整个_install目录是952K.加上845K的内核不是已经超过1440K了吗?别担心,我们将对整个根文件系统做大幅度的压缩.
转载于:https://www.cnblogs.com/myitm/archive/2011/08/15/2139465.html
Busybox是什么?相关推荐
- 安卓下使用 dropbear 开启SSH And arm 下的busybox
安卓系统 4.2.2 硬件是荣耀立方 只对电视盒子部分进行了操作,没有修改路由部分 先安装<超级终端><RE文件管理器>(华为的应用市场里有),安装 <360超级roo ...
- 详解基于busybox、dropbear、ngnix制作完整的嵌入式Linux系统
说明: <一>:查看此博文,建议查看笔者上一篇博文(Linux启动过程),因为只有在完全了解Linux系统启动流程及一些配置文件的相关性,在阅读此博文才能有思路,理解起来更 ...
- g++ linux 编译开栈_使用 linux kernel +busybox 定制linux系统
写在开头: 本来是想使用linux kernel +busybox 制作一个教程的,后来快要结束的时候,死活找不到硬盘,我了解很多文章都有类似的,但是没有谈到硬盘找不到问题,最后历经艰辛,终于把问题解 ...
- busybox filesystem httpd php-5.5.31 sqlite3 webserver
/********************************************************************* busybox filesystem httpd php- ...
- 初识Docker:BusyBox容器后台运行失败
1.问题描述:我在进行Docker网络实验时,使用docker run -d busybox命令时,busybox无法保持后台长期运行. ============================ ...
- 什么是Busybox,简单使用
BusyBox 是一个集成了一百多个最常用 Linux 命令和工具(如 cat.echo.grep.mount.telnet 等)的精简工具箱,它只需要几 MB 的大小,很方便进行各种快速验证,被誉为 ...
- 源码编译 busybox
源码编译 busybox 一.下载源码包 [root@centos7 ~]# wget https://busybox.net/downloads/busybox-1.30.1.tar.bz2 --2 ...
- Busybox下的microcom用法
Busybox下的microcom用法 在嵌入式平台下,集成有minicom软件,可以实现串口调试功能,但是有的不会集成minicom软件.如果你使用的是busybox的文件系统,有一个更加简单的串口 ...
- Alpine?Distroless?Busybox?到底谁才是容器镜像的瑞士军刀?
大多数情况下,我们构建容器镜像时选择的基础镜像无外乎是 busybox.alpine 和 google/distroless 这几种,这几个基础镜像在云原生的世界很吃香,被广泛应用于各个应用的容器化. ...
- Linux 利用busybox制作根文件系统
busybox版本:1.17.3 官网下载路径:https://busybox.net/downloads/ 网盘下载路径:https://pan.baidu.com/s/1nvrEa73 密码:7y ...
最新文章
- 图灵机与控制论之分歧,一切为了人类心智的荣耀!
- 生产过剩下的危机--房价上涨买不起房,房价泡沫破裂后仍然买不起房!
- HDOJ(HDU) 1977 Consecutive sum II(推导、、)
- 用Cmake编译Opencv源码,生成动态库
- 黑马程序员C语言基础(第四天)数据类型
- Newbe.ObjectVisitor 0.2.10 发布,更花里胡哨
- 【Qt开发】QT对话框去掉帮助和关闭按钮 拦截QT关闭窗口的CloseEvent
- homebrew安装mysql
- php mysql 分行执行,php执行mysql存储及执行脚本
- CodeIgniter典型的表单提交验证代码
- 无烟会议室:CMMI vs. Scrum vs. XP(QCon 2010 感受)
- UVA11069 A Graph Problem【递推】
- 【项目管理】记第一次出差到客户现场推进项目验收感悟-后续项目验收篇
- iphone模拟器安装app
- 0 、 '0' 、 0 、 ’\0’ 区别
- vscode error: You have not concluded your merge
- android平台的一款mud工具,全平台 MUD 客户端 TinTin++ 之安卓篇
- 云服务器修改dns 114,为什么改成114dns就行?
- springboot毕设项目:网上图书商城q3ulr(java+VUE+Mybatis+Maven+Mysql)
- GCC后端及汇编发布(8)
热门文章
- Redhat 5.4 安装vsftp
- c语言熵值法,干货 | R语言熵值法详解(附代码) 秒懂自定义函数
- 业务流程图_你会用Visio制作专业的业务流程图吗?
- excel日期相关计算天数
- html模板引擎 字符串长度,javascript轻量级模板引擎juicer使用指南
- java项目没有xml,利用eclipse新建的java web项目没有部署描述符web.xml文件怎么办?...
- Linux使用docker安装RabbitMQ一站式教程【图文教程】
- 使用Graphics画表格
- Pandas系列(十二)实现groupby分组统计
- 编程题常见输入格式处理方法