Diniz Martins

Apr 16, 20232 min

BusyBox

BusyBox is a collection of Linux system utilities that are combined into a single executable. It is designed to be run on devices with limited resources such as routers, embedded systems, and other similar devices.

The BusyBox utilities include many common Linux commands such as cat, ls, grep, tar, among others. By combining these utilities into a single executable, BusyBox takes up less disk space and requires fewer system resources than installing each utility individually.

The main advantage of BusyBox is that it allows devices with limited resources to perform common Linux tasks without taking up much disk space or consuming many system resources. In addition, BusyBox is open-source and can be customized according to the user's needs.

However, one disadvantage of using BusyBox is that it may not provide all the features of individual Linux utilities. This can be a problem for advanced users who require more advanced functionality.

BusyBox is a multi-call binary. A multi-call binary is an executable program that performs the same job as more than one utility program. That means there is just a single BusyBox binary, but that single binary acts like a large number of utilities. This allows BusyBox to be smaller since all the built-in utility programs (we call them applets) can share code for many common operations.

You can also invoke BusyBox by issuing a command as an argument on the command line. For example, entering

will also cause BusyBox to behave as 'ls'.

Of course, adding '/bin/busybox' into every command would be painful. So most people will invoke BusyBox using links to the BusyBox binary.

For example, entering

will cause BusyBox to behave as 'ls' (if the 'ls' command has been compiled into BusyBox). Generally speaking, you should never need to make all these links yourself, as the BusyBox build system will do this for you when you run the 'make install' command.

If you invoke BusyBox with no arguments, it will provide you with a list of the applets that have been compiled into your BusyBox binary.

Most BusyBox applets support the --help argument to provide a terse runtime description of their behaviour. If the CONFIG_FEATURE_VERBOSE_USAGE option has been enabled, more detailed usage information will also be available.

On Linux, you can install BusyBox using your package manager.

Select the BusyBox package to install from the available set of packages:

Install compelled binaries of BusyBox on Ubuntu:

List all the applets supported by Busybox:

Uninstall old version of Busybox:

If you would like to test BusyBox for yourself, you can download it from the official website at https://www.busybox.net/downloads/. There are also many resources available online to help you get started with using BusyBox on your device.

    340
    3