Difference between revisions of "BusyBox"

From ArchWiki
Jump to: navigation, search
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Software]]
+
[[Category:System administration]]
  
The [https://wiki.archlinux.org/index.php/DeveloperWiki:Core-Repository base]2[http://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.
+
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.
  
 
'''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.'''
 
'''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.'''
Line 12: Line 12:
 
==gnu2busybox-coreutils==
 
==gnu2busybox-coreutils==
  
This [https://aur.archlinux.org/packages.php?ID=48187 package] offers a nearly pain-free drop-in replacement of the GNU coreutils. Some commands lack options present in the corresponding coreutils binaries.
+
Package {{AUR|busybox-coreutils}} offers a nearly pain-free drop-in replacement of the GNU coreutils. Some commands lack options present in the corresponding coreutils binaries.
  
Gain from replacing coreutils with busybox: GNU [http://www.archlinux.org/packages/core/x86_64/coreutils/ coreutils]: 13.1 MB installed, symlinks to busybox: approximately 0.
+
Gain from replacing coreutils with busybox: GNU {{Pkg|coreutils}}: 13.1 MB installed, symlinks to busybox: approximately 0.
  
 
'''Missing utilities:'''
 
'''Missing utilities:'''
Line 48: Line 48:
 
==base2busybox-util-linux==
 
==base2busybox-util-linux==
  
This [https://aur.archlinux.org/packages.php?ID=48437 package] offers an alternative to util-linux.
+
Package {{AUR|busybox-util-linux}} offers an alternative to util-linux.
  
Gain from replacing util-linux with busybox: [http://www.archlinux.org/packages/core/x86_64/util-linux/ util-linux]:  7.5 MB installed, symlinks to busybox: approximately 0.
+
Gain from replacing util-linux with busybox: {{Pkg|util-linux}}:  7.5 MB installed, symlinks to busybox: approximately 0.
  
 
'''Missing utilities:'''
 
'''Missing utilities:'''
Line 70: Line 70:
  
 
'''Missing features that cause problems:'''
 
'''Missing features that cause problems:'''
 
 
 
----
 
  
 
==gnu2busybox-findutils==
 
==gnu2busybox-findutils==
  
This [https://aur.archlinux.org/packages.php?ID=48353 package] offers functionality corresponding to the binaries found in GNU [http://www.archlinux.org/packages/core/x86_64/findutils/ findutils].
+
Package {{AUR|busybox-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.
 
Gain from replacing findutils with busybox: GNU findutils: 1.7 MB installed, symlinks to busybox: approximately 0.
Line 89: Line 85:
  
 
----
 
----
   
 
  
 
==gnu2busybox-diffutils==
 
==gnu2busybox-diffutils==
  
This [https://aur.archlinux.org/packages.php?ID=48363 package] offers functionality corresponding to the binaries found in GNU [http://www.archlinux.org/packages/core/x86_64/diffutils/ diffutils].
+
Package {{AUR|busybox-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.
 
Gain from replacing diffutils with busybox: GNU diffutils: 1.4 MB installed, symlinks to busybox: approximately 0.
Line 103: Line 98:
  
 
'''Missing features that cause problems:'''
 
'''Missing features that cause problems:'''
   
 
  
 
==FUTURE PLANS==
 
==FUTURE PLANS==

Revision as of 07:32, 24 May 2013


The base2busybox project aims to offer drop-in replacements for various central parts of the Arch linux base system.

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.

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.



gnu2busybox-coreutils

Package busybox-coreutilsAUR offers a nearly pain-free drop-in replacement of the GNU coreutils. Some commands lack options present in the corresponding coreutils binaries.

Gain from replacing coreutils with busybox: GNU coreutils: 13.1 MB installed, symlinks to busybox: approximately 0.

Missing utilities:

/bin

    dircolors

/usr/bin

    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 busybox-util-linuxAUR offers an alternative to util-linux.

Gain from replacing util-linux with busybox: 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 busybox-findutilsAUR offers functionality corresponding to the binaries found in GNU 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 busybox-diffutilsAUR offers functionality corresponding to the binaries found in GNU 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.