搜索
首页运维linux运维linux busybox是什么

linux busybox是什么

Nov 11, 2022 am 10:20 AM
linux

busybox是一款开发Linux系统下软件的开发工具,是一个集成了三百多个最常用Linux命令和工具的软件。简单的说BusyBox就好像是个大工具箱,它集成压缩了Linux的许多工具和命令,也包含了 Linux系统的自带的shell。BusyBox是GNU Coreutils的绝佳替代品,特别是在操作系统的小尺寸很重要的情况下。

linux busybox是什么

本教程操作环境:linux7.3系统、Dell G3电脑。

BusyBox 现在越来越流行,特别是在 Docker 用户中,许多 Docker 镜像使用 BusyBox 为您提供最小镜像。

如果您认为 Linux 命令是理所当然的,这可能会让许多用户感到特别困惑,您认为 ls、mv 和其他此类命令是 Linux 的一部分,而事实是这些命令是 GNU Coreutils 软件包的一部分,并且大多数 Linux 发行版都预装了它。

GNU Coreutils几乎是各种 UNIX/Linux 命令的事实上的提供者,几乎是因为总是有替代品,而 BusyBox 就是 GNU Coreutils 的替代品之一。

什么是BusyBox?

busybox是一款开发Linux系统下软件的开发工具。

BusyBox 是一个开源项目,它提供了大约 400 个常见 UNIX/Linux 命令的精简实现。

BusyBox 是一个集成了三百多个最常用Linux命令和工具的软件。BusyBox 包含了一些简单的工具,例如ls、cat和echo等等,还包含了一些更大、更复杂的工具,例grep、find、mount以及telnet。有些人将 BusyBox 称为 Linux 工具里的瑞士军刀。简单的说BusyBox就好像是个大工具箱,它集成压缩了 Linux 的许多工具和命令,也包含了 Linux 系统的自带的shell。

BusyBox 实现删除了不常见的、很少使用的命令选项,一切都小于 1 MB,这个最小的图像是它在嵌入式系统和物联网领域以及云计算世界中流行的原因。

不要看它的大小,BusyBox像经典编辑器一样具有 sed 和 awk 的范围(再次精简版),它也包含自己的 shell,它甚至包含一个可以作为 PID 1 启动的 init 命令,这意味着 BusyBox 可以配置为 Systemd、OpenRC 等的替代品。

BusyBox 是 GNU Coreutils 的绝佳替代品,特别是在操作系统的小尺寸很重要的情况下。

BusyBox 为您提供流行的 Linux 命令,如 mv、mkdir、ls 等,但它仅包含这些命令的常用选项。这种极简主义是 BusyBox 的 USP。

您没有使用 BusyBox 获得完整的 Linux 命令选项是一个问题吗?

这取决于你的需要,真的,大多数人永远不需要命令的所有选项。一些 Linux 命令有超过 50 个选项,我敢打赌,你甚至从未使用过单个 Linux 命令的所有选项。

BusyBox 减少了很少使用的选项,例如,ls 命令具有选项 G,它从长列表输出 (ls -l) 中删除组名。

1.png

现在,我认为你从来不需要这个选项,这就是为什么它在 BusyBox 的 ls 实现中不存在的原因,如果您确实需要一个不包含组名的输出,您所要做的就是为此目的使用 cut 或 awk 命令。

再举一个例子。这是来自 GNU Coreutils的mv 命令的帮助页面:

Usage: mv [OPTION]... [-T] SOURCE DEST
  or:  mv [OPTION]... SOURCE... DIRECTORY
  or:  mv [OPTION]... -t DIRECTORY SOURCE...
Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY.

Mandatory arguments to long options are mandatory for short options too.
      --backup[=CONTROL]       make a backup of each existing destination file
  -b                           like --backup but does not accept an argument
  -f, --force                  do not prompt before overwriting
  -i, --interactive            prompt before overwrite
  -n, --no-clobber             do not overwrite an existing file
If you specify more than one of -i, -f, -n, only the final one takes effect.
      --strip-trailing-slashes  remove any trailing slashes from each SOURCE
                                 argument
  -S, --suffix=SUFFIX          override the usual backup suffix
  -t, --target-directory=DIRECTORY  move all SOURCE arguments into DIRECTORY
  -T, --no-target-directory    treat DEST as a normal file
  -u, --update                 move only when the SOURCE file is newer
                                 than the destination file or when the
                                 destination file is missing
  -v, --verbose                explain what is being done
  -Z, --context                set SELinux security context of destination
                                 file to default type
      --help     display this help and exit
      --version  output version information and exit

现在,这里是 BusyBox 的 mv 命令帮助页面:

Usage: mv [-fin] SOURCE DEST
or: mv [-fin] SOURCE... DIRECTORY

Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY

 -f Don't prompt before overwriting
 -i Interactive, prompt before overwrite
 -n Don't overwrite an existing file

看到不同?

如何获得 BusyBox?

您可以通过多种方式获得 BusyBox。

如果您只是想在当前的 Linux 发行版上体验 BusyBox,您可以使用发行版的包管理器(如 Apt 或 DNF 或Yum )安装它。

在 Ubuntu 上,您可以使用以下命令安装 BusyBox:

sudo apt install busybox

之后,如果要运行 BusyBox 版本的命令,则必须在其前面添加 busybox。

busybox cat sample.txt

如果 BusyBox 未实现命令,则会引发“找不到小程序”的错误。

abhishek@LHB:~$ busybox xyz
xyz: applet not found

或者,您可以下载BusyBox 的 Docker 镜像并在运行的容器中体验它。

请确保您已安装 Docker,拉取官方docker镜像:

docker pull busybox

从镜像运行一个容器并进入 BusyBox shell:

docker run -it --rm busybox

您在此处运行的每个 Linux 命令都来自 BusyBox。您不需要明确指定它。

2.png

总之,您不需要在常规 Linux 系统上使用 BusyBox,您已经拥有来自 GNU Coreutils 的完整版本的 Linux 命令。无需安装精简版。

但是 BusyBox 在特殊领域有其用途,例如为嵌入式或物联网设备配置最小的 Linux 操作系统时。当您希望保持 Docker 映像的大小较小时也是如此。

相关推荐:《Linux视频教程

以上是linux busybox是什么的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
Linux中的维护模式:何时以及为什么使用它Linux中的维护模式:何时以及为什么使用它Apr 25, 2025 am 12:15 AM

使用Linux维护模式的时机和原因:1)系统启动问题时,2)进行重大系统更新或升级时,3)执行文件系统维护时。维护模式提供安全、控制的环境,确保操作的安全性和效率,减少对用户的影响,并增强系统的安全性。

Linux:基本命令和操作Linux:基本命令和操作Apr 24, 2025 am 12:20 AM

Linux中不可或缺的命令包括:1.ls:列出目录内容;2.cd:改变工作目录;3.mkdir:创建新目录;4.rm:删除文件或目录;5.cp:复制文件或目录;6.mv:移动或重命名文件或目录。这些命令通过与内核交互执行操作,帮助用户高效管理文件和系统。

Linux操作:管理文件,目录和权限Linux操作:管理文件,目录和权限Apr 23, 2025 am 12:19 AM

在Linux中,文件和目录管理使用ls、cd、mkdir、rm、cp、mv命令,权限管理使用chmod、chown、chgrp命令。1.文件和目录管理命令如ls-l列出详细信息,mkdir-p递归创建目录。2.权限管理命令如chmod755file设置文件权限,chownuserfile改变文件所有者,chgrpgroupfile改变文件所属组。这些命令基于文件系统结构和用户、组系统,通过系统调用和元数据实现操作和控制。

Linux中的维护模式是什么?解释了Linux中的维护模式是什么?解释了Apr 22, 2025 am 12:06 AM

MaintenancemodeInuxisAspecialBootenvironmentforforcalsystemmaintenancetasks.itallowsadMinistratorStoperFormTaskSlikerSettingPassingPassingPasswords,RepairingFilesystems,andRecoveringFrombootFailuresFailuresFailuresInamInimAlenimalenimalenrenmentrent.ToEnterMainterMainterMaintErmaintErmaintEncemememodeBoode,Interlecttheboo

Linux:深入研究其基本部分Linux:深入研究其基本部分Apr 21, 2025 am 12:03 AM

Linux的核心组件包括内核、文件系统、Shell、用户空间与内核空间、设备驱动程序以及性能优化和最佳实践。1)内核是系统的核心,管理硬件、内存和进程。2)文件系统组织数据,支持多种类型如ext4、Btrfs和XFS。3)Shell是用户与系统交互的命令中心,支持脚本编写。4)用户空间与内核空间分离,确保系统稳定性。5)设备驱动程序连接硬件与操作系统。6)性能优化包括调整系统配置和遵循最佳实践。

Linux体系结构:揭示5个基本组件Linux体系结构:揭示5个基本组件Apr 20, 2025 am 12:04 AM

Linux系统的五个基本组件是:1.内核,2.系统库,3.系统实用程序,4.图形用户界面,5.应用程序。内核管理硬件资源,系统库提供预编译函数,系统实用程序用于系统管理,GUI提供可视化交互,应用程序利用这些组件实现功能。

Linux操作:利用维护模式Linux操作:利用维护模式Apr 19, 2025 am 12:08 AM

Linux的维护模式可以通过GRUB菜单进入,具体步骤为:1)在GRUB菜单中选择内核并按'e'编辑,2)在'linux'行末添加'single'或'1',3)按Ctrl X启动。维护模式提供了一个安全环境,适用于系统修复、重置密码和系统升级等任务。

Linux:如何进入恢复模式(和维护)Linux:如何进入恢复模式(和维护)Apr 18, 2025 am 12:05 AM

进入Linux恢复模式的步骤是:1.重启系统并按特定键进入GRUB菜单;2.选择带有(recoverymode)的选项;3.在恢复模式菜单中选择操作,如fsck或root。恢复模式允许你以单用户模式启动系统,进行文件系统检查和修复、编辑配置文件等操作,帮助解决系统问题。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器