12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- # vi: set sw=4 ts=4:
- =head1 NAME
- BusyBox - The Swiss Army Knife of Embedded Linux
- =head1 SYNTAX
- busybox <applet> [arguments...] # or
- <applet> [arguments...] # if symlinked
- =head1 DESCRIPTION
- BusyBox combines tiny versions of many common UNIX utilities into a single
- small executable. It provides minimalist replacements for most of the utilities
- you usually find in GNU coreutils, util-linux, etc. The utilities in BusyBox
- generally have fewer options than their full-featured GNU cousins; however, the
- options that are included provide the expected functionality and behave very
- much like their GNU counterparts.
- BusyBox has been written with size-optimization and limited resources in mind.
- It is also extremely modular so you can easily include or exclude commands (or
- features) at compile time. This makes it easy to customize your embedded
- systems. To create a working system, just add /dev, /etc, and a Linux kernel.
- BusyBox provides a fairly complete POSIX environment for any small or embedded
- system.
- BusyBox is extremely configurable. This allows you to include only the
- components you need, thereby reducing binary size. Run 'make config' or 'make
- menuconfig' to select the functionality that you wish to enable. Then run
- 'make' to compile BusyBox using your configuration.
- After the compile has finished, you should use 'make install' to install
- BusyBox. This will install the 'bin/busybox' binary, in the target directory
- specified by CONFIG_PREFIX. CONFIG_PREFIX can be set when configuring BusyBox,
- or you can specify an alternative location at install time (i.e., with a
- command line like 'make CONFIG_PREFIX=/tmp/foo install'). If you enabled
- any applet installation scheme (either as symlinks or hardlinks), these will
- also be installed in the location pointed to by CONFIG_PREFIX.
- =head1 USAGE
- 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
- /bin/busybox ls
- 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
- ln -s /bin/busybox ls
- ./ls
- 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.
- =head1 COMMON OPTIONS
- Most BusyBox applets support the B<--help> argument to provide a terse runtime
- description of their behavior. If the CONFIG_FEATURE_VERBOSE_USAGE option has
- been enabled, more detailed usage information will also be available.
- =head1 COMMANDS
- Currently available applets include:
|