How Big Is A BusyBox?

  • Fairly standard build is 375K.

    • Dynamically linked with libc, libm and libcrypt.

    • Similar utilities in normal distributions take up 5788K (also dynamically linked). Admittedly, some of these are not stripped of debugging symbols.

    • Sadly, glibc is about 8418K, so the above savings are almost lost in the noise.

  • Statically linking against glibc gives a binary that is 952K in size.

  • This binary includes tools that act similarly to GNU versions of:

    [, addgroup, adduser, ash, basename, bunzip2, bzcat, cat, chgrp, chmod, chown, chroot, clear, cp, cpio, crond, crontab, cut, date, dc, dd, df, dirname, dmesg, du, echo, egrep, env, false, find, free, grep, gunzip, gzip, halt, head, hostname, id, ifconfig, init, insmod, ip, kill, killall, klogd, ln, logger, login, ls, lsmod, md5sum, mesg, mkdir, mknod, mktemp, modprobe, more, mount, mv, nc, netstat, nslookup, passwd, ping, ping6, pivot_root, poweroff, printf, ps, pwd, rdate, reboot, reset, rm, rmdir, rmmod, route, rpm, sed, sh, sleep, sort, start-stop-daemon, su, sulogin, swapoff, swapon, sync, syslogd, tail, tar, telnet, test, time, touch, tr, traceroute, true, tty, udhcpc, umount, uname, uniq, uptime, uudecode, uuencode, vi, vlock, wc, wget, which, who, whoami, xargs, xrc, yes, zcat (116 utilities).