Difference between revisions of "BusyBox"

From ArchWiki
Jump to: navigation, search
m (gnu2busybox-diffutils: use pkg template.)
m (add ja link)
 
(22 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
[[Category:System administration]]
 
[[Category:System administration]]
 +
[[ja:BusyBox]]
 +
{{Related articles start}}
 +
{{Related|mkinitcpio}}
 +
{{Related|init}}
 +
{{Related articles end}}
 +
{{Warning|Do not expect full drop-in replacement and compatibility. Certain utilities may not exist and for those that do, there may be missing options.}}
  
The [https://wiki.archlinux.org/index.php/DeveloperWiki:Core-Repository base]2[https://www.archlinux.org/packages/community/x86_64/busybox/ busybox] project aims to offer drop-in replacements for various central parts of the Arch linux base system.
+
[[w:BusyBox]]
  
'''IMPORTANT: Do not expect 100% drop-in replacement and compatibility. Certain utilities may not exist and for those that do, there may be missing options. One purpose of this Wiki is to document missing features and the problems they cause (in order to device work-arounds). Make sure that the replacement(s) that you install fill your needs before proceeding.'''
+
== Installation ==
  
Busybox commands are simply symlinks to the busybox binary and are thus extremely light weight. For a low footprint system, this could be quite valuable.
+
[[Install]] the {{Pkg|busybox}} package.
  
 +
Busybox commands are symbolic links to {{ic|/usr/bin/busybox}} and thus take very little space. This is especially interesting for low-footprint systems.
  
----
+
== Usage ==
  
==gnu2busybox-coreutils==
+
=== init ===
  
Package {{AUR|gnu2busybox-coreutils}} offers a nearly pain-free drop-in replacement of the GNU coreutils. Some commands lack options present in the corresponding coreutils binaries.
+
[[Minirc]] provides an init script compatible to busybox-init. See [[init]] for details.
  
Gain from replacing coreutils with busybox: GNU {{Pkg|coreutils}}: 13.1 MB installed, symlinks to busybox: approximately 0.
+
=== mdev ===
  
'''Missing utilities:'''
+
See [https://wiki.gentoo.org/wiki/Mdev Gentoo wiki].
  
/bin
+
== See also ==
    dircolors
+
  
/usr/bin
+
* [[w:ToyBox]]
    chcon csplit factor fmt join nl nproc paste pinky pr ptx runcon shuf
+
    stdbuf timeout truncate tsort users
+
 
+
'''Missing utilities that are mapped to corresponding Busybox functions or ash script files'''
+
 
+
/bin
+
    dir --> ls
+
    shred --> rm
+
    vdir --> ls
+
 
+
/usr/bin
+
    link --> ln
+
    unlink --> rm
+
    sha224sum --> script: perl-digest-sha
+
    sha256sum --> script: perl-digest-sha
+
    sha384sum --> script: perl-digest-sha
+
    sha512sum --> script: perl-digest-sha
+
 
+
'''Missing features that cause problems:'''
+
 
+
      readlink: missing option [-e, -m, -q or -s] causes problems for Yaourt
+
   
+
----
+
 
+
==base2busybox-util-linux==
+
 
+
Package {{AUR|base2busybox-util-linux}} offers an alternative to util-linux.
+
 
+
Gain from replacing util-linux with busybox: {{Pkg|util-linux}}:  7.5 MB installed, symlinks to busybox: approximately 0.
+
 
+
'''Missing utilities:'''
+
 
+
/bin
+
    arch findmnt lsblk
+
 
+
/sbin
+
    agetty blkid cfdisk ctrlaltdel findfs fsck.cramfs fsfreeze fstrim mkfs
+
    mkfs.bfs mkfs.cramfs raw sfdisk swaplabel wipefs
+
 
+
/usr/bin
+
  chkdupexe col colcrt colrm column cytune ddate fallocate i386 ionice ipcmk
+
  isosize line look lscpu mcookie namei pg rename scriptreplay setterm tailf
+
  taskset ul unshare uuidgen whereis write x86_64
+
 
+
/usr/sbin
+
    addpart delpart ldattach partx tunelp uuidd
+
 
+
'''Missing features that cause problems:'''
+
 
+
==gnu2busybox-findutils==
+
 
+
Package {{AUR|gnu2busybox-findutils}} offers functionality corresponding to the binaries found in GNU {{Pkg|findutils}}.
+
 
+
Gain from replacing findutils with busybox: GNU findutils: 1.7 MB installed, symlinks to busybox: approximately 0.
+
 
+
'''Missing utilities:'''
+
 
+
/usr/bin
+
    oldfind
+
 
+
'''Missing features that cause problems:'''
+
 
+
----
+
 
+
==gnu2busybox-diffutils==
+
 
+
Package {{AUR|gnu2busybox-diffutils}} offers functionality corresponding to the binaries found in GNU {{Pkg|diffutils}}.
+
 
+
Gain from replacing diffutils with busybox: GNU diffutils: 1.4 MB installed, symlinks to busybox: approximately 0.
+
 
+
'''Missing utilities:'''
+
 
+
/usr/bin
+
    diff3 sdiff
+
 
+
'''Missing features that cause problems:'''
+
 
+
==FUTURE PLANS==
+
 
+
* Busybox-init: a very simple (only 1 runlevel) init system, ash init scripts
+
* Meta-package and/or group to easily convert an Arch base system to a busybox base system.
+

Latest revision as of 09:42, 27 August 2016

Related articles

Warning: Do not expect full drop-in replacement and compatibility. Certain utilities may not exist and for those that do, there may be missing options.

w:BusyBox

Installation

Install the busybox package.

Busybox commands are symbolic links to /usr/bin/busybox and thus take very little space. This is especially interesting for low-footprint systems.

Usage

init

Minirc provides an init script compatible to busybox-init. See init for details.

mdev

See Gentoo wiki.

See also