X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=docs%2Fbusybox.sgml;h=b54d68ee58e01a469c842fa177156c92fc60e631;hb=8d441783817d909b7ba3c0148d7deb121e9791c8;hp=cf7161a23098007018ca294e03cf02921198fccb;hpb=83a949cb225e5f327929c8911010cd947ffd08d5;p=oweals%2Fbusybox.git diff --git a/docs/busybox.sgml b/docs/busybox.sgml index cf7161a23..b54d68ee5 100644 --- a/docs/busybox.sgml +++ b/docs/busybox.sgml @@ -1,5495 +1,4027 @@ - - - - - - - + + + + BusyBox - The Swiss Army Knife of Embedded Linux + + + + This documentation is free software; you can redistribute + it and/or modify it under the terms of the GNU General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later + version. + + + + This program is distributed in the hope that it will be + useful, but WITHOUT ANY WARRANTY; without even the implied + warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the GNU General Public License for more details. + + + + You should have received a copy of the GNU General Public + License along with this program; if not, write to the Free + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, + MA 02111-1307 USA + + + + For more details see the file COPYING in the source + distribution of Linux. + + + + + + + Introduction + + + 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 fileutils, shellutils, findutils, textutils, + grep, gzip, tar, etc. BusyBox provides a fairly complete POSIX environment + for any small or embedded system. 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 a kernel, a + shell (such as ash), and an editor (such as elvis-tiny or ae). + + + + + How to use BusyBox + + Syntax + + + + BusyBox <function> [arguments...] # or + + + + + + <function> [arguments...] # if symlinked + + + + + + Invoking BusyBox + + + When you create a link to BusyBox for the function you wish to use, when + BusyBox is called using that link it will behave as if the command itself + has been invoked. + + + + For example, entering + + + + + ln -s ./BusyBox ls + ./ls + + + + + will cause BusyBox to behave as 'ls' (if the 'ls' command has been compiled + into BusyBox). + + + + You can also invoke BusyBox by issuing the command as an argument on the + command line. For example, entering + + + + + ./BusyBox ls + + + + + will also cause BusyBox to behave as 'ls'. + + + + + + Common options + + + Most BusyBox commands support the --help option to provide + a terse runtime description of their behavior. + + + + + + BusyBox Commands + + Available BusyBox Commands + + Currently defined functions include: + + + + addgroup, adduser, adjtimex, ar, arping, ash, awk, basename, + bunzip2, busybox, bzcat, cal, cat, chgrp, chmod, chown, chroot, + chvt, clear, cmp, cp, cpio, crond, crontab, cut, date, dc, dd, + deallocvt, delgroup, deluser, df, dirname, dmesg, dos2unix, dpkg, + dpkg-deb, du, dumpkmap, dumpleases, dutmp, echo, egrep, env, expr, + false, fbset, fdflush, fdformat, fgrep, find, fold, free, freeramdisk, + fsck.minix, ftpget, ftpput, getopt, getty, grep, gunzip, gzip, + halt, hdparm, head, hexdump, hostid, hostname, httpd, hush, hwclock, + id, ifconfig, ifdown, ifup, inetd, init, insmod, ip, ipcalc, iplink, + iproute, iptunnel, kill, killall, klogd, lash, length, linuxrc, + ln, loadfont, loadkmap, logger, login, logname, logread, + losetup, ls, lsmod, makedevs, md5sum, mesg, minit, mkdir, mkfifo, + mkfs.minix, mknod, mkswap, mktemp, modprobe, more, mount, msh, + msvc, mt, mv, nameif, nc, netstat, nslookup, od, openvt, passwd, + patch, pidfilehack, pidof, ping, ping6, pivot_root, poweroff, + printf, ps, pwd, rdate, readlink, realpath, reboot, renice, reset, + rm, rmdir, rmmod, route, rpm, rpm2cpio, run-parts, sed, setkeycodes, + sha1sum, sleep, sort, start-stop-daemon, strings, stty, su, sulogin, + swapoff, swapon, sync, syslogd, tail, tar, tee, telnet, telnetd, + test, tftp, time, top, touch, tr, traceroute, true, tty, udhcpc, + udhcpd, umount, uname, uncompress, uniq, unix2dos, unzip, + uptime, usleep, uudecode, uuencode, vconfig, vi, vlock, watch, + watchdog, wc, wget, which, who, whoami, xargs, yes, zcat, [ + + + + + + ar + + + Usage: ar [OPTION] archive [FILENAME]... + + + + Extract or list files from an ar archive. + + + + Options: + + + + + o Preserve original dates + p Extract to stdout + t List + x Extract + v Verbosely list files processed + + + + + + basename + + Usage: basename FILE [SUFFIX] + + + + Strip directory path and suffixes from FILE. If specified, also removes + any trailing SUFFIX. + + + + Example: + + + + + $ basename /usr/local/bin/foo + foo + $ basename /usr/local/bin/ + bin + $ basename /foo/bar.txt .txt + bar + + + + + + cat + + + Usage: cat [FILE]... + + + + Concatenate FILE(s) and prints them to the standard + output. + + + + Example: + + + + + $ cat /proc/uptime + 110716.72 17.67 + + + + + + chgrp + + + Usage: chgrp [OPTION]... GROUP FILE... + + + + Change the group membership of each FILE to GROUP. + + + + Options: + + + + + -R Change files and directories recursively + + + + + Example: + + + + + $ ls -l /tmp/foo + -r--r--r-- 1 andersen andersen 0 Apr 12 18:25 /tmp/foo + $ chgrp root /tmp/foo + $ ls -l /tmp/foo + -r--r--r-- 1 andersen root 0 Apr 12 18:25 /tmp/foo + + + + + + chmod + + + Usage: chmod [-R] MODE[,MODE]... FILE... + + + + Change file access permissions for the specified + FILE(s) (or directories). Each MODE is defined by + combining the letters for WHO has access to the file, an OPERATOR for + selecting how the permissions should be changed, and a PERMISSION for + FILE(s) (or directories). + + + + WHO may be chosen from + + + + + u User who owns the file + g Users in the file's Group + o Other users not in the file's group + a All users + + + + + OPERATOR may be chosen from + + + + + + Add a permission + - Remove a permission + = Assign a permission + + + + + PERMISSION may be chosen from + + + + + r Read + w Write + x Execute (or access for directories) + s Set user (or group) ID bit + t Sticky bit (for directories prevents removing files by non-owners) + + + + + Alternately, permissions can be set numerically where the first three + numbers are calculated by adding the octal values, such as + + + + + 4 Read + 2 Write + 1 Execute + + + + + An optional fourth digit can also be used to specify + + + + + 4 Set user ID + 2 Set group ID + 1 Sticky bit + + + + + Options: + + + + + -R Change files and directories recursively. + + + + + Example: + + + + + $ ls -l /tmp/foo + -rw-rw-r-- 1 root root 0 Apr 12 18:25 /tmp/foo + $ chmod u+x /tmp/foo + $ ls -l /tmp/foo + -rwxrw-r-- 1 root root 0 Apr 12 18:25 /tmp/foo* + $ chmod 444 /tmp/foo + $ ls -l /tmp/foo + -r--r--r-- 1 root root 0 Apr 12 18:25 /tmp/foo + + + + + + chown + + Usage: chown [OPTION]... OWNER[<.|:>[GROUP] FILE... + + + + Change the owner and/or group of each FILE to OWNER and/or GROUP. + + + + Options: + + + + + -R Change files and directories recursively + + + + + Example: + + + + + $ ls -l /tmp/foo + -r--r--r-- 1 andersen andersen 0 Apr 12 18:25 /tmp/foo + $ chown root /tmp/foo + $ ls -l /tmp/foo + -r--r--r-- 1 root andersen 0 Apr 12 18:25 /tmp/foo + $ chown root.root /tmp/foo + ls -l /tmp/foo + -r--r--r-- 1 root root 0 Apr 12 18:25 /tmp/foo + + + + + + chroot + + Usage: chroot NEWROOT [COMMAND...] + + + + Run COMMAND with root directory set to NEWROOT. + + + + Example: + + + + + $ ls -l /bin/ls + lrwxrwxrwx 1 root root 12 Apr 13 00:46 /bin/ls -> /BusyBox + $ mount /dev/hdc1 /mnt -t minix + $ chroot /mnt + $ ls -l /bin/ls + -rwxr-xr-x 1 root root 40816 Feb 5 07:45 /bin/ls* + + + + + + chvt + + Usage: chvt N + + + + Change the foreground virtual terminal to /dev/ttyN + + + + + clear + + + Usage: clear + + + + Clear the screen. + + + + + cp + + + Usage: cp [OPTION]... SOURCE DEST + + + + + or: cp [OPTION]... SOURCE... DIRECTORY + + + + + Copy SOURCE to DEST, or multiple SOURCE(s) to + DIRECTORY. + + + + Options: + + + + + -a Same as -dpR + -d Preserve links + -p Preserve file attributes if possible + -R Copy directories recursively + + + + + + cut + + + Usage: cut [OPTION]... [FILE]... + + + + Print selected fields from each input FILE to standard output. + + + + Options: + + + + + -b LIST Output only bytes from LIST + -c LIST Output only characters from LIST + -d CHAR Use CHAR instead of tab as the field delimiter + -s Output only the lines containing delimiter + -f N Print only these fields + -n Ignored + + + + + Example: + + + + + $ echo "Hello world" | cut -f 1 -d ' ' + Hello + $ echo "Hello world" | cut -f 2 -d ' ' + world + + + + + + date + + + Usage: date [OPTION]... [+FORMAT] + + + + + or: date [OPTION] [MMDDhhmm[[CC]YY][.ss]] + + + + + Display the current time in the given FORMAT, or set the system date. + + + + Options: + + + + + -R Output RFC-822 compliant date string + -s Set time described by STRING + -u Print or set Coordinated Universal Time + + + + + Example: + + + + + $ date + Wed Apr 12 18:52:41 MDT 2000 + + + + + + dc + + + Usage: dc [EXPRESSION] + + + + This is a Tiny RPN calculator that understands the + following operations: +, -, /, *, and, or, not, eor. If + no arguments are given, dc will process input from + stdin. + + + + The behaviour of BusyBox/dc deviates (just a little ;-) + from GNU/dc, but this will be remedied in the future. + + + + Example: + + + + + $ dc 2 2 + + 4 + $ dc 8 8 \* 2 2 + / + 16 + $ dc 0 1 and + 0 + $ dc 0 1 or + 1 + $ echo 72 9 div 8 mul | dc + 64 + + + + + + dd + + + Usage: dd [OPTION]... + + + + Copy a file, converting and formatting according to + options. + + + + Options: + + + + + if=FILE Read from FILE instead of stdin + of=FILE Write to FILE instead of stdout + bs=N Read and write N bytes at a time + count=N Copy only N input blocks + skip=N Skip N input blocks + seek=N Skip N output blocks + + + + + Numbers may be suffixed by w (x2), k (x1024), b (x512), + or M (x1024^2). + + + + Example: + + + + + $ dd if=/dev/zero of=/dev/ram1 bs=1M count=4 + 4+0 records in + 4+0 records out + + + + + + deallocvt + + + Usage: deallocvt N + + + + Deallocate unused virtual terminal /dev/ttyN. + + + + + df + + + Usage: df [FILE]... + + + + Print the filesystem space used and space available. + + + + Example: + + + + + $ df + Filesystem 1k-blocks Used Available Use% Mounted on + /dev/sda3 8690864 8553540 137324 98% / + /dev/sda1 64216 36364 27852 57% /boot + $ df /dev/sda3 + Filesystem 1k-blocks Used Available Use% Mounted on + /dev/sda3 8690864 8553540 137324 98% / + + + + + + dirname + + + Usage: dirname NAME + + + + Strip non-directory suffix from NAME. + + + + Example: + + + + + $ dirname /tmp/foo + /tmp + $ dirname /tmp/foo/ + /tmp + + + + + + dmesg + + + Usage: dmesg [OPTION]... + + + + Print or control the kernel ring buffer. + + + + Options: + + + + + -c Clear the ring buffer after printing + -n LEVEL Set the console logging level to LEVEL + -s BUFSIZE Query ring buffer using a buffer of BUFSIZE + + + + + + dos2unix + + + Usage: dos2unix < dosfile > unixfile + + + + Converts a text file from dos format to unix format. + + + + + + dpkg-deb + + + Usage: dpkg-deb [OPTION] archive [directory] + + + + Debian package archive (.deb) manipulation tool + + + + Options: + + + + + -c List the contents of the filesystem tree archive portion of the package + -e Extracts the control information files from a package archive into the specified directory. + If no directory is specified then a subdirectory DEBIAN in the current directory is used. + -x Silently extracts the filesystem tree from a package archive into the specified directory. + -X Extracts the filesystem tree from a package archive into the specified directory, listing the files as it goes. + If required the specified directory (but not its parents) will be created. + + + + + Example: + + + + + dpkg-deb -e ./busybox_0.48-1_i386.deb + dpkg-deb -x ./busybox_0.48-1_i386.deb ./unpack_dir + + + + + + du + + + Usage: du [OPTION]... [FILE]... + + + + Summarize the disk space used for each FILE or current + directory. Disk space printed in units of 1k (i.e., + 1024 bytes). + + + + Options: + + + + + -l Count sizes many times if hard linked + -s Display only a total for each argument + + + + + Example: + + + + + $ du + 16 ./CVS + 12 ./kernel-patches/CVS + 80 ./kernel-patches + 12 ./tests/CVS + 36 ./tests + 12 ./scripts/CVS + 16 ./scripts + 12 ./docs/CVS + 104 ./docs + 2417 . + + + + + + dumpkmap + + + Usage: dumpkmap + + + + Prints out a binary keyboard translation table to standard output. + + + + Example: + + + + + $ dumpkmap < keymap + + + + + + dutmp + + + Usage: dutmp [FILE] + + + + Dump utmp file format (pipe delimited) from FILE or + stdin to stdout. + + + + Example: + + + + + $ dutmp /var/run/utmp + 8|7||si|||0|0|0|955637625|760097|0 + 2|0|~|~~|reboot||0|0|0|955637625|782235|0 + 1|20020|~|~~|runlevel||0|0|0|955637625|800089|0 + 8|125||l4|||0|0|0|955637629|998367|0 + 6|245|tty1|1|LOGIN||0|0|0|955637630|998974|0 + 6|246|tty2|2|LOGIN||0|0|0|955637630|999498|0 + 7|336|pts/0|vt00andersen|andersen|:0.0|0|0|0|955637763|0|0 + + + + + + echo + + + Usage: echo [OPTION]... [ARG]... + + + + Print ARGs to stdout. + + + + Options: + + + + + -n Suppress trailing newline + -e Enable interpretation of escaped characters + -E Disable interpretation of escaped characters + + + + + Example: + + + + + $ echo "Erik is cool" + Erik is cool + $ echo -e "Erik\nis\ncool" + Erik + is + cool + $ echo "Erik\nis\ncool" + Erik\nis\ncool + + + + + + expr + + + Usage: expr EXPRESSION + + + + Prints the value of EXPRESSION to standard output. + + + + EXPRESSION may be: + + + + + ARG1 | ARG2 ARG1 if it is neither null nor 0, otherwise ARG2 + ARG1 & ARG2 ARG1 if neither argument is null or 0, otherwise 0 + ARG1 < ARG2 ARG1 is less than ARG2 + ARG1 <= ARG2 ARG1 is less than or equal to ARG2 + ARG1 = ARG2 ARG1 is equal to ARG2 + ARG1 != ARG2 ARG1 is unequal to ARG2 + ARG1 >= ARG2 ARG1 is greater than or equal to ARG2 + ARG1 > ARG2 ARG1 is greater than ARG2 + ARG1 + ARG2 arithmetic sum of ARG1 and ARG2 + ARG1 - ARG2 arithmetic difference of ARG1 and ARG2 + ARG1 * ARG2 arithmetic product of ARG1 and ARG2 + ARG1 / ARG2 arithmetic quotient of ARG1 divided by ARG2 + ARG1 % ARG2 arithmetic remainder of ARG1 divided by ARG2 + STRING : REGEXP anchored pattern match of REGEXP in STRING + match STRING REGEXP same as STRING : REGEXP + substr STRING POS LENGTH substring of STRING, POS counted from 1 + index STRING CHARS index in STRING where any CHARS is found, or 0 + length STRING length of STRING + quote TOKEN interpret TOKEN as a string, even if it is a + keyword like `match' or an operator like `/' + ( EXPRESSION ) value of EXPRESSION + + + + + Beware that many operators need to be escaped or quoted for shells. + Comparisons are arithmetic if both ARGs are numbers, else + lexicographical. Pattern matches return the string matched between + \( and \) or null; if \( and \) are not used, they return the number + of characters matched or 0. + + + + + + + false + + + Usage: false + + + + Return an exit code of FALSE (1). + + + + Example: + + + + + $ false + $ echo $? + 1 + + + + + + fbset + + + Usage: fbset [OPTION]... [MODE] + + + + Show and modify frame buffer device settings. + + + + Options: + + + + + -h Display option summary + -fb DEVICE Operate on DEVICE + -db FILE Use FILE for mode database + -g XRES YRES VXRES VYRES DEPTH Set all geometry parameters + -t PIXCLOCK LEFT RIGHT UPPER LOWER HSLEN VSLEN Set all timing parameters + -xres RES Set visible horizontal resolution + -yres RES Set visible vertical resolution + + + + + Example: + + + + + $ fbset + mode "1024x768-76" + # D: 78.653 MHz, H: 59.949 kHz, V: 75.694 Hz + geometry 1024 768 1024 768 16 + timings 12714 128 32 16 4 128 4 + accel false + rgba 5/11,6/5,5/0,0/0 + endmode + + + + + + fdflush + + + Usage: fdflush DEVICE + + + + Force floppy disk drive to detect disk change on DEVICE. + + + + + find + + + Usage: find [PATH]... [EXPRESSION] + + + + Search for files in a directory hierarchy. The default + PATH is the current directory; default EXPRESSION is + '-print'. + + + + EXPRESSION may consist of: + + + + + -follow Dereference symbolic links + -name PATTERN File name (leading directories removed) matches PATTERN + -type X Filetype matches X (where X is one of: f,d,l,b,c,...) + -perm PERMS Permissions match any of (+NNN); all of (-NNN); or exactly (NNN) + -mtime TIME Modified time is greater than (+N); less than (-N); or exactly (N) days + + + + + Example: + + + + + $ find / -name /etc/passwd + /etc/passwd + + + + + + free + + + Usage: free + + + + Displays the amount of free and used system memory. + + + + Example: + + + + + $ free + total used free shared buffers + Mem: 257628 248724 8904 59644 93124 + Swap: 128516 8404 120112 + Total: 386144 257128 129016 + + + + + + freeramdisk + + + Usage: freeramdisk DEVICE + + + + Free all memory used by the ramdisk DEVICE. + + + + Example: + + + + + $ freeramdisk /dev/ram2 + + + + + + fsck.minix + + + Usage: fsck.minix [OPTION]... DEVICE + + + + Perform a consistency check on the MINIX filesystem on + DEVICE. + + + + Options: + + + + + -l List all filenames + -r Perform interactive repairs + -a Perform automatic repairs + -v Verbose + -s Output super-block information + -m Activate MINIX-like "mode not cleared" warnings + -f Force file system check. + + + + + + getopt + + + Usage: getopt [OPTIONS]... + + + + Parse command options + + + + + -a, --alternative Allow long options starting with single -\n" + -l, --longoptions=longopts Long options to be recognized\n" + -n, --name=progname The name under which errors are reported\n" + -o, --options=optstring Short options to be recognized\n" + -q, --quiet Disable error reporting by getopt(3)\n" + -Q, --quiet-output No normal output\n" + -s, --shell=shell Set shell quoting conventions\n" + -T, --test Test for getopt(1) version\n" + -u, --unqote Do not quote the output\n" + + + + + + Example: + + + + + $ cat getopt.test + #!/bin/sh + GETOPT=`getopt -o ab:c:: --long a-long,b-long:,c-long:: \ + -n 'example.busybox' -- "$@"` + if [ $? != 0 ] ; then exit 1 ; fi + eval set -- "$GETOPT" + while true ; do + case $1 in + -a|--a-long) echo "Option a" ; shift ;; + -b|--b-long) echo "Option b, argument \`$2'" ; shift 2 ;; + -c|--c-long) + case "$2" in + "") echo "Option c, no argument"; shift 2 ;; + *) echo "Option c, argument \`$2'" ; shift 2 ;; + esac ;; + --) shift ; break ;; + *) echo "Internal error!" ; exit 1 ;; + esac + done + + + + + + grep + + + Usage: grep [OPTIONS]... PATTERN [FILE]... + + + + Search for PATTERN in each FILE or stdin. + + + + Options: + + + + + -h Suppress the prefixing filename on output + -i Ignore case distinctions + -n Print line number with output lines + -q Be quiet. Returns 0 if result was found, 1 otherwise + -v Select non-matching lines + + + + + This version of grep matches full regular expressions. + + + + Example: + + + + + $ grep root /etc/passwd + root:x:0:0:root:/root:/bin/bash + $ grep ^[rR]oo. /etc/passwd + root:x:0:0:root:/root:/bin/bash + + + + + + gunzip + + + Usage: gunzip [OPTION]... FILE + + + + Uncompress FILE (or stdin if FILE is '-'). + + + + Options: + + + + + -c Write output to standard output + -t Test compressed file integrity + + + + + Example: + + + + + $ ls -la /tmp/BusyBox* + -rw-rw-r-- 1 andersen andersen 557009 Apr 11 10:55 /tmp/BusyBox-0.43.tar.gz + $ gunzip /tmp/BusyBox-0.43.tar.gz + $ ls -la /tmp/BusyBox* + -rw-rw-r-- 1 andersen andersen 1761280 Apr 14 17:47 /tmp/BusyBox-0.43.tar + + + + + + gzip + + + Usage: gzip [OPTION]... FILE + + + + Compress FILE (or stdin if FILE is '-') with maximum + compression to FILE.gz (or stdout if FILE is '-'). + + + + Options: + + + + + -c Write output to standard output + -d decompress + + + + + Example: + + + + + $ ls -la /tmp/BusyBox* + -rw-rw-r-- 1 andersen andersen 1761280 Apr 14 17:47 /tmp/BusyBox-0.43.tar + $ gzip /tmp/BusyBox-0.43.tar + $ ls -la /tmp/BusyBox* + -rw-rw-r-- 1 andersen andersen 554058 Apr 14 17:49 /tmp/BusyBox-0.43.tar.gz + + + + + + halt + + + Usage: halt + + + + Halt the system. + + + + + head + + + Usage: head [OPTION] FILE... + + + + Print first 10 lines of each FILE to standard output. + With more than one FILE, precede each with a header + giving the file name. With no FILE, or when FILE is -, + read standard input. + + + + Options: + + + + + -n NUM Print first NUM lines instead of first 10 + + + + + Example: + + + + + $ head -n 2 /etc/passwd + root:x:0:0:root:/root:/bin/bash + daemon:x:1:1:daemon:/usr/sbin:/bin/sh + + + + + + hostid + + + Usage: hostid + + + + Prints out a unique 32-bit identifier for the current + machine. The 32-bit identifier is intended to be unique + among all UNIX systems in existence. + + + + + hostname + + + Usage: hostname [OPTION]... [HOSTNAME|-F FILE] + + + + Get or set the hostname or DNS domain name. If a + hostname is given (or a file with the -F parameter), the + host name will be set. + + + + Options: + + + + + -s Short + -i Addresses for the hostname + -d DNS domain name + -F, --file FILE Use the contents of FILE to specify the hostname + + + + + Example: + + + + + $ hostname + slag + + + + + + id + + + Usage: id [OPTION]... [USERNAME] + + + + Print information for USERNAME or the current user. + + + + Options: + + + + + -g Print only the group ID + -u Print only the user ID + -n print a name instead of a number (with for -ug) + -r Print the real user ID instead of the effective ID (with -ug) + + + + + Example: + + + + + $ id + uid=1000(andersen) gid=1000(andersen) + + + + + + init + + + Usage: init + + + + Init is the parent of all processes. + + + + This version of init is designed to be run only by the + kernel. + + + + BusyBox init doesn't support multiple runlevels. The + runlevels field of the /etc/inittab file is completely + ignored by BusyBox init. If you want runlevels, use + sysvinit. + + + + BusyBox init works just fine without an inittab. If no + inittab is found, it has the following default behavior: + + + + + ::sysinit:/etc/init.d/rcS + ::askfirst:/bin/sh + + + + + If it detects that /dev/console is _not_ a serial + console, it will also run: + + + + + tty2::askfirst:/bin/sh + + + + + If you choose to use an /etc/inittab file, the inittab + entry format is as follows: + + + + + <id>:<runlevels>:<action>:<process> + + + + + id + + + WARNING: This field has a non-traditional meaning for BusyBox init! + The id field is used by BusyBox init to specify the controlling tty + for the specified process to run on. The contents of this field + are appended to "/dev/" and used as-is. There is no need for this + field to be unique, although if it isn't you may have strange + results. If this field is left blank, the controlling tty is set + to the console. Also note that if BusyBox detects that a serial + console is in use, then only entries whose controlling tty is + either the serial console or /dev/null will be run. BusyBox init + does nothing with utmp. We don't need no stinkin' utmp. + + + + + + runlevels + + + The runlevels field is completely ignored. + + + + + action + + + + Valid actions include: sysinit, respawn, askfirst, wait, + once, and ctrlaltdel. + + + + + The available actions can be classified into two groups: actions + that are run only once, and actions that are re-run when the specified + process exits. + + + + Run only-once actions: + + + + 'sysinit' is the first item run on boot. init waits until all + sysinit actions are completed before continuing. Following the + completion of all sysinit actions, all 'wait' actions are run. + 'wait' actions, like 'sysinit' actions, cause init to wait until + the specified task completes. 'once' actions are asyncronous, + therefore, init does not wait for them to complete. 'ctrlaltdel' + actions are run immediately before init causes the system to reboot + (unmounting filesystems with a 'ctrlaltdel' action is a very good + idea). + + + + Run repeatedly actions: + + + + 'respawn' actions are run after the 'once' actions. When a process + started with a 'respawn' action exits, init automatically restarts + it. Unlike sysvinit, BusyBox init does not stop processes from + respawning out of control. The 'askfirst' actions acts just like + respawn, except that before running the specified process it + displays the line "Please press Enter to activate this console." + and then waits for the user to press enter before starting the + specified process. + + + + Unrecognized actions (like initdefault) will cause init to emit an + error message, and then go along with its business. All actions are + run in the reverse order from how they appear in /etc/inittab. + + + + + + process + + + Specifies the process to be executed and its + command line. + + + + + Example /etc/inittab file + + + + # This is run first except when booting in single-user mode. + # + ::sysinit:/etc/init.d/rcS + + # /bin/sh invocations on selected ttys + # + # Start an "askfirst" shell on the console (whatever that may be) + ::askfirst:-/bin/sh + # Start an "askfirst" shell on /dev/tty2-4 + tty2::askfirst:-/bin/sh + tty2::askfirst:-/bin/sh + tty2::askfirst:-/bin/sh + + # /sbin/getty invocations for selected ttys + # + tty4::respawn:/sbin/getty 38400 tty5 + tty5::respawn:/sbin/getty 38400 tty6 + + # Example of how to put a getty on a serial line (for a terminal) + # + #::respawn:/sbin/getty -L ttyS0 9600 vt100 + #::respawn:/sbin/getty -L ttyS1 9600 vt100 + # + # Example how to put a getty on a modem line. + #::respawn:/sbin/getty 57600 ttyS2 + + # Stuff to do before rebooting + ::ctrlaltdel:/bin/umount -a -r + ::ctrlaltdel:/sbin/swapoff + + + + + + + insmod + + + Usage: insmod [OPTION]... MODULE [symbol=value]... + + + + Load MODULE into the kernel. + + + + Options: + + + + + -f Force module to load into the wrong kernel version. + -k Make module autoclean-able. + -v Verbose output + -x Do not export externs + -L Prevent simultaneous loads of the same module + + + + + + kill + + + Usage: kill [OPTION] PID... + + + + Send a signal (default is SIGTERM) to the specified + PID(s). + + + + Options: + + + + + -l List all signal names and numbers + -SIG Send signal SIG + + + + + Example: + + + + + $ ps | grep apache + 252 root root S [apache] + 263 www-data www-data S [apache] + 264 www-data www-data S [apache] + 265 www-data www-data S [apache] + 266 www-data www-data S [apache] + 267 www-data www-data S [apache] + $ kill 252 + + + + + + killall + + + Usage: killall [OPTION] NAME... + + + + Send a signal (default is SIGTERM) to the specified + NAME(s). + + + + Options: + + + + + -l List all signal names and numbers + -SIG Send signal SIG + + + + + Example: + + + + + $ killall apache + + + + + + length + + + Usage: length STRING + + + + Print the length of STRING. + + + + Example: + + + + + $ length "Hello" + 5 + + + + + + ln + + + Usage: ln [OPTION]... TARGET FILE|DIRECTORY + + + + Create a link named FILE or DIRECTORY to the specified + TARGET. You may use '--' to indicate that all following + arguments are non-options. + + + + Options: + + + + + -s Make symbolic link instead of hard link + -f Remove existing destination file + + + + + Example: + + + + + $ ln -s BusyBox /tmp/ls + $ ls -l /tmp/ls + lrwxrwxrwx 1 root root 7 Apr 12 18:39 ls -> BusyBox* + + + + + + loadfont + + + Usage: loadfont + + + + Load a console font from stdin. + + + + Example: + + + + + $ loadfont < /etc/i18n/fontname + + + + + + loadkmap + + + Usage: loadkmap + + + + Load a binary keyboard translation table from stdin. + + + + Example: + + + + + $ loadkmap < /etc/i18n/lang-keymap + + + + + + logger + + + Usage: logger [OPTION]... [MESSAGE] + + + + Write MESSAGE to the system log. If MESSAGE is omitted, log + stdin. + + + + Options: + + + + + -s Log to stderr as well as the system log + -t Log using the specified tag (defaults to user name) + -p Enter the message with the specified priority + This may be numerical or a ``facility.level'' pair + + + + + Example: + + + + + $ logger "hello" + + + + + + logname + + + Usage: logname + + + + Print the name of the current user. + + + + Example: + + + + + $ logname + root + + + + + + logread + + + Usage: logread [OPTION]... + + + + Shows the messages from syslogd (using circular buffer). + + + + Options: + + + + + -f Output data as the log grows. + + + + + Example: + + + + + $ logread + + + + + + ls + + + Usage: ls [OPTION]... [FILE]... + + + + + + + + Options: + + + + + -a Do not hide entries starting with . + -c With -l: show ctime (the time of last + modification of file status information) + -d List directory entries instead of contents + -e List both full date and full time + -l Use a long listing format + -n List numeric UIDs and GIDs instead of names + -p Append indicator (one of /=@|) to entries + -u With -l: show access time (the time of last + access of the file) + -x List entries by lines instead of by columns + -A Do not list implied . and .. + -C List entries by columns + -F Append indicator (one of */=@|) to entries + -L list entries pointed to by symbolic links + -R List subdirectories recursively + + + + + Example: + + + + + + + + + + lsmod + + + Usage: lsmod + + + + List currently loaded kernel modules. + + + + + makedevs + + + Usage: makedevsf NAME TYPE MAJOR MINOR FIRST LAST [s] + + + + Create a range of block or character special files. + + + + TYPE may be: + + + + + b Make a block (buffered) device + c or u Make a character (un-buffered) device + p Make a named pipe. MAJOR and MINOR are ignored for named pipes + + + + + FIRST specifies the number appended to NAME to create + the first device. LAST specifies the number of the last + item that should be created. If 's' is the last + argument, the base device is created as well. + + + + Example: + + + + + $ makedevs /dev/ttyS c 4 66 2 63 + [creates ttyS2-ttyS63] + $ makedevs /dev/hda b 3 0 0 8 s + [creates hda,hda1-hda8] + + + + + + md5sum + + + Usage: md5sum [OPTION]... FILE... + + + + Print or check MD5 checksums. + + + + Options: + + + + + -b Read files in binary mode + -c Check MD5 sums against given list + -t Read files in text mode (default) + -g Read a string + + + + + The following two options are useful only when verifying + checksums: + + + + + -s Don't output anything, status code shows success + -w Warn about improperly formated MD5 checksum lines + + + + + Example: + + + + + $ md5sum busybox + 6fd11e98b98a58f64ff3398d7b324003 busybox + $ md5sum -c + 6fd11e98b98a58f64ff3398d7b324003 busybox + 6fd11e98b98a58f64ff3398d7b324002 busybox + md5sum: MD5 check failed for 'busybox' + ^D + + + + + + mkdir + + + Usage: mkdir [OPTION]... DIRECTORY... + + + + Create the DIRECTORY(s), if they do not already exist. + + + + Options: + + + + + -m Set permission mode (as in chmod), not rwxrwxrwx - umask + -p No error if directory exists, make parent directories as needed + + + + + Example: + + + + + $ mkdir /tmp/foo + $ mkdir /tmp/foo + /tmp/foo: File exists + $ mkdir /tmp/foo/bar/baz + /tmp/foo/bar/baz: No such file or directory + $ mkdir -p /tmp/foo/bar/baz + + + + + + mkfifo + + + Usage: mkfifo [OPTION] NAME + + + + Create a named pipe (identical to 'mknod NAME p'). + + + + Options: + + + + + -m MODE Create the pipe using the specified mode (default a=rw) + + + + + + mkfs.minix + + + Usage: mkfs.minix [OPTION]... NAME [BLOCKS] + + + + Make a MINIX filesystem. + + + + Options: + + + + + -c Check the device for bad blocks + -n [14|30] Specify the maximum length of filenames + -i Specify the number of inodes for the filesystem + -l FILENAME Read the bad blocks list from FILENAME + -v Make a Minix version 2 filesystem + + + + + + mknod + + + Usage: mknod [OPTION]... NAME TYPE MAJOR MINOR + + + + Create a special file (block, character, or pipe). + + + + Options: + + + + + -m Create the special file using the specified mode (default a=rw) + + + + + TYPE may be: + + + + + b Make a block (buffered) device + c or u Make a character (un-buffered) device + p Make a named pipe. MAJOR and MINOR are ignored for named pipes + + + + + Example: + + + + + $ mknod /dev/fd0 b 2 0 + $ mknod -m 644 /tmp/pipe p + + + + + + mkswap + + + Usage: mkswap [OPTION]... DEVICE [BLOCKS] + + + + Prepare a disk partition to be used as a swap partition. + + + + Options: + + + + + -c Check for read-ability. + -v0 Make version 0 swap [max 128 Megs]. + -v1 Make version 1 swap [big!] (default for kernels > 2.1.117). + BLOCKS Number of block to use (default is entire partition). + + + + + + mktemp + + + Usage: mktemp TEMPLATE + + + + Creates a temporary file with its name based on + TEMPLATE. TEMPLATE is any name with six `Xs' (i.e., + /tmp/temp.XXXXXX). + + + + Example: + + + + + $ mktemp /tmp/temp.XXXXXX + /tmp/temp.mWiLjM + $ ls -la /tmp/temp.mWiLjM + -rw------- 1 andersen andersen 0 Apr 25 17:10 /tmp/temp.mWiLjM + + + + + + more + + + Usage: more [FILE]... + + + + Page through text one screenful at a time. + + + + Example: + + + + + $ dmesg | more + + + + + + mount + + + Usage: mount [OPTION]... + + + + + or: mount [OPTION]... DEVICE DIRECTORY + + + + + Mount filesystems. + + + + Options: + + + + + -a Mount all filesystems in /etc/fstab + -o One of the many filesystem options listed below + -r Mount the filesystem read-only + -t TYPE Specify the filesystem type + -w Mount the filesystem read-write + + + + + Options for use with the -o flag: + + + + + async/sync Writes are asynchronous / synchronous + atime/noatime Enable / disable updates to inode access times + dev/nodev Allow / disallow use of special device files + exec/noexec Allow / disallow use of executable files + loop Mount a file via loop device + suid/nosuid Allow / disallow set-user-id-root programs + remount Remount a currently mounted filesystem + ro/rw Mount filesystem read-only / read-write + + + + + There are even more flags that are filesystem specific. + You'll have to see the written documentation for those. + + + + Example: + + + + + $ mount + /dev/hda3 on / type minix (rw) + proc on /proc type proc (rw) + devpts on /dev/pts type devpts (rw) + $ mount /dev/fd0 /mnt -t msdos -o ro + $ mount /tmp/diskimage /opt -t ext2 -o loop + + + + + + mt + + + Usage: mt [OPTION] OPCODE VALUE + + + + Control magnetic tape drive operation. + + + + Options: + + + + + -f DEVICE Control DEVICE + + + + + + mv + + + Usage: mv SOURCE DEST + + + + + or: mv SOURCE... DIRECTORY + + + + + Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY. + + + + Example: + + + + + $ mv /tmp/foo /bin/bar + + + + + + nc + + + Usage: nc HOST PORT + + + + or: nc -p PORT -l + + + + + Open a pipe to HOST:PORT or listen for a connection on PORT. + + + + Example: + + + + + $ nc foobar.somedomain.com 25 + 220 foobar ESMTP Exim 3.12 #1 Sat, 15 Apr 2000 00:03:02 -0600 + help + 214-Commands supported: + 214- HELO EHLO MAIL RCPT DATA AUTH + 214 NOOP QUIT RSET HELP + quit + 221 foobar closing connection + + + + + + nslookup + + + Usage: nslookup [HOST] + + + + Query the nameserver for the IP address of the given + HOST. + + + + Example: + + + + + $ nslookup localhost + Server: default + Address: default + + Name: debian + Address: 127.0.0.1 + + + + + + ping + + + Usage: ping [OPTION]... HOST + + + + Send ICMP ECHO_REQUEST packets to HOST. + + + + Options: + + + + + -c COUNT Send only COUNT pings + -s SIZE Send SIZE data bytes in packets (default=56) + -q Quiet mode, only displays output at start and when finished + + + + + Example: + + + + + $ ping localhost + PING slag (127.0.0.1): 56 data bytes + 64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=20.1 ms + + --- debian ping statistics --- + 1 packets transmitted, 1 packets received, 0% packet loss + round-trip min/avg/max = 20.1/20.1/20.1 ms + + + + + + poweroff + + + Usage: poweroff + + + + Shut down the system, and request that the kernel turn + off power upon halting. + + + + + printf + + + Usage: printf FORMAT [ARGUMENT]... + + + + Format and print the given data in a manner similar to + the C printf command. + + + + Example: + + + + + $ printf "Val=%d\n" 5 + Val=5 + + + + + + ps + + + Usage: ps + + + + Report process status. This version of ps accepts no + options. + + + + Options: + + + + + + + + + Example: + + + + + $ ps + PID Uid Gid State Command + 1 root root S init + 2 root root S [kflushd] + 3 root root S [kupdate] + 4 root root S [kpiod] + 5 root root S [kswapd] + 742 andersen andersen S [bash] + 743 andersen andersen S -bash + 745 root root S [getty] + 2990 andersen andersen R ps + + + + + + pwd + + + Usage: pwd + + + + Print the full filename of the current working + directory. + + + + Example: + + + + + $ pwd + /root + + + + + + rdate + + + Usage: rdate [OPTION] HOST + + + + Get and possibly set the system date and time from a remote HOST. + + + + Options: + + + + + -s Set the system date and time (default). + -p Print the date and time. + + + + + + reboot + + + Usage: reboot + + + + Reboot the system. + + + + + renice + + + Usage: renice priority pid [pid ...] + + + + Changes priority of running processes. Allowed priorities range + from 20 (the process runs only when nothing else is running) to 0 + (default priority) to -20 (almost nothing else ever gets to run). + + + + + reset + + + Usage: reset + + + + Resets the screen. + + + + + rm + + + Usage: rm [OPTION]... FILE... + + + + Remove (unlink) the FILE(s). You may use '--' to + indicate that all following arguments are non-options. + + + + Options: + + + + + -i Always prompt before removing each destinations + -f Remove existing destinations, never prompt + -r or -R Remove the contents of directories recursively + + + + + Example: + + + + + $ rm -rf /tmp/foo + + + + + + rmdir + + + Usage: rmdir DIRECTORY... + + + + Remove DIRECTORY(s) if they are empty. + + + + Example: + + + + + $ rmdir /tmp/foo + + + + + + rmmod + + + Usage: rmmod [OPTION]... [MODULE]... + + + + Unload MODULE(s) from the kernel. + + + + Options: + + + + + -a Remove all unused modules (recursively) + + + + + Example: + + + + + $ rmmod tulip + + + + + + run-parts + + + Usage: run-parts [-t] [-a ARG] [-u MASK] DIRECTORY + + + + Run a bunch of scripts in a directory. + + + + Options: + + + + + -t Test only. It only print the file to be executed, + without execute them. + -a ARG Pass ARG as an a argument to the programs executed. + -u MASK Set the umask to MASK before executing the programs. + + + + + + + + sed + + + Usage: sed [OPTION]... SCRIPT [FILE]... + + + + Allowed sed scripts come in the following form: + + + + + ADDR [!] COMMAND + + + + + ADDR can be: + + + + + NUMBER Match specified line number + $ Match last line + /REGEXP/ Match specified regexp + + + + + ! inverts the meaning of the match + + + + COMMAND can be: + + + + + s/regexp/replacement/[igp] + which attempt to match regexp against the pattern space + and if successful replaces the matched portion with replacement. + aTEXT + which appends TEXT after the pattern space + + + + + This version of sed matches full regular expressions. + + + + Options: + + + + + -e Add the script to the commands to be executed + -n Suppress automatic printing of pattern space + + + + + Example: + + + + + $ echo "foo" | sed -e 's/f[a-zA-Z]o/bar/g' + bar + + + + + + setkeycodes + + + Usage: setkeycodes SCANCODE KEYCODE ... + + + + Set entries into the kernel's scancode-to-keycode map, + allowing unusual keyboards to generate usable keycodes. + + + + SCANCODE may be either xx or e0xx (hexadecimal), and + KEYCODE is given in decimal. + + + + Example: + + + + + $ setkeycodes e030 127 + + + + + + + sh + + + Usage: sh + + + + lash -- the BusyBox LAme SHell (command interpreter) + + + + This command does not yet have proper documentation. + + + + Use lash just as you would use any other shell. It + properly handles pipes, redirects, job control, can be + used as the shell for scripts (#!/bin/sh), and has a + sufficient set of builtins to do what is needed. It does + not (yet) support Bourne Shell syntax. If you need + things like ``if-then-else'', ``while'', and such, use + ash or bash. If you just need a very simple and + extremely small shell, this will do the job. + + + + + sleep + + + Usage: sleep N + + + + Pause for N seconds. + + + + Example: + + + + + $ sleep 2 + [2 second delay results] + + + + + + sort + + + Usage: sort [OPTION]... [FILE]... + + + + Sort lines of text in FILE(s). + + + + Options: + + + + + -n Compare numerically + -r Reverse after sorting + + + + + Example: + + + + + $ echo -e "e\nf\nb\nd\nc\na" | sort + a + b + c + d + e + f + + + + + + swapoff + + + Usage: swapoff [OPTION] [DEVICE] + + + + Stop swapping virtual memory pages on DEVICE. + + + + Options: + + + + + -a Stop swapping on all swap devices + + + + + + swapon + + + Usage: swapon [OPTION] [DEVICE] + + + + Start swapping virtual memory pages on the given device. + + + + Options: + + + + + -a Start swapping on all swap devices + + + + + + sync + + + Usage: sync + + + + Write all buffered filesystem blocks to disk. + + + + + syslogd + + + Usage: syslogd [OPTION]... + + + + Linux system and kernel (provides klogd) logging + utility. Note that this version of syslogd/klogd ignores + /etc/syslog.conf. + + + + Options: + + + + + -m NUM Interval between MARK lines (default=20min, 0=off) + -n Run as a foreground process + -K Do not start up the klogd process + -O FILE Use an alternate log file (default=/var/log/messages) + -R HOST[:PORT] Log remotely to IP or hostname on PORT (default PORT=514/UDP) + -L Log locally as well as network logging (default is network only) + -C [size(KiB)] Log to a circular buffer. Read this buffer using 'logread' + + + + + Example: + + + + + $ syslogd -R masterlog:514 + $ syslogd -R 192.168.1.1:601 + + + + + + tail + + + Usage: tail [OPTION] [FILE]... + + + + Print last 10 lines of each FILE to standard output. + With more than one FILE, precede each with a header + giving the file name. With no FILE, or when FILE is -, + read stdin. + + + + Options: + + + + + -n NUM Print last NUM lines instead of last 10 + -f Output data as the file grows. This version + of 'tail -f' supports only one file at a time. + + + + + Example: + + + + + $ tail -n 1 /etc/resolv.conf + nameserver 10.0.0.1 + + + + + + tar + + + Usage: tar [MODE] [OPTION] [FILE]... + + + + + + + + MODE may be chosen from + + + + + c Create + x Extract + t List + + + + + Options: + + + + + f FILE Use FILE for tarfile (or stdin if '-') + O Extract to stdout + exclude FILE File to exclude + v List files processed + + + + + Example: + + + + + $ zcat /tmp/tarball.tar.gz | tar -xf - + $ tar -cf /tmp/tarball.tar /usr/local + + + + + + tee + + + Usage: tee [OPTION]... [FILE]... + + + + Copy stdin to FILE(s), and also to stdout. + + + + Options: + + + + + -a Append to the given FILEs, do not overwrite + + + + + Example: + + + + + $ echo "Hello" | tee /tmp/foo + Hello + $ cat /tmp/foo + Hello + + + + + + telnet + + + Usage: telnet HOST [PORT] + + + + Establish interactive communication with another + computer over a network using the TELNET protocol. + + + + + test, [ + + + Usage: test EXPRESSION + + + + or: [ EXPRESSION ] + + + + Check file types and compare values returning an exit + code determined by the value of EXPRESSION. + + + + Example: + + + + + $ test 1 -eq 2 + $ echo $? + 1 + $ test 1 -eq 1 + $ echo $? + 0 + $ [ -d /etc ] + $ echo $? + 0 + $ [ -d /junk ] + $ echo $? + 1 + + + + + + touch + + + Usage: touch [OPTION]... FILE... + + + + Update the last-modified date on (or create) FILE(s). + + + + Options: + + + + + -c Do not create files + + + + + Example: + + + + + $ ls -l /tmp/foo + /bin/ls: /tmp/foo: No such file or directory + $ touch /tmp/foo + $ ls -l /tmp/foo + -rw-rw-r-- 1 andersen andersen 0 Apr 15 01:11 /tmp/foo + + + + + + tr + + + Usage: tr [OPTION]... STRING1 [STRING2] + + + + Translate, squeeze, and/or delete characters from stdin, + writing to stdout. + + + + Options: + + + + + -c Take complement of STRING1 + -d Delete input characters coded STRING1 + -s Squeeze multiple output characters of STRING2 into one character + + + + + Example: + + + + + $ echo "gdkkn vnqkc" | tr [a-y] [b-z] + hello world + + + + + + true + + + Usage: true + + + + Return an exit code of TRUE (1). + + + + Example: + + + + + $ true + $ echo $? + 0 + + + + + + tty + + + Usage: tty + + + + Print the file name of the terminal connected to stdin. + + + + Options: + + + + + -s Print nothing, only return an exit status + + + + + Example: + + + + + $ tty + /dev/tty2 + + + + + + umount + + + Usage: umount [OPTION]... DEVICE|DIRECTORY + + + + + + + + Options: + + + + + -a Unmount all file systems + -r Try to remount devices as read-only if mount is busy + -f Force filesystem umount (i.e., unreachable NFS server) + -l Do not free loop device (if a loop device has been used) + + + + + Example: + + + + + $ umount /dev/hdc1 + + + + + + uname + + + Usage: uname [OPTION]... + + + + Print certain system information. With no OPTION, same + as -s. + + + + Options: + + + + + -a Print all information + -m Print the machine (hardware) type + -n Print the machine's network node hostname + -r Print the operating system release + -s Print the operating system name + -p Print the host processor type + -v Print the operating system version + + + + + Example: + + + + + $ uname -a + Linux debian 2.2.15pre13 #5 Tue Mar 14 16:03:50 MST 2000 i686 unknown + + + + + + uniq + + + Usage: uniq [INPUT [OUTPUT]] + + + + Discard all but one of successive identical lines from + INPUT (or stdin), writing to OUTPUT (or stdout). + + + + Options: + + + + + -c prefix lines by the number of occurrences + -d only print duplicate lines + -u only print unique lines + + + + + Example: + + + + + $ echo -e "a\na\nb\nc\nc\na" | sort | uniq + a + b + c + + + + + + unix2dos + + + Usage: unix2dos < unixfile > dosfile + + + + Converts a text file from unix format to dos format. + + + + + + unrpm + + + Usage: unrpm < package.rpm | gzip -d | cpio -idmuv + + + + Extracts an rpm archive. + + + + + + update + + + Usage: update [OPTION]... + + + + Periodically flush filesystem buffers. + + + + Options: + + + + + -S Force use of sync(2) instead of flushing + -s SECS Call sync this often (default 30) + -f SECS Flush some buffers this often (default 5) + + + + + + uptime + + + Usage: uptime + + + + Display how long the system has been running since boot. + + + + Example: + + + + + $ uptime + 1:55pm up 2:30, load average: 0.09, 0.04, 0.00 + + + + + + usleep + + + Usage: usleep N + + + + Pause for N microseconds. + + + + Example: + + + + + $ usleep 1000000 + [pauses for 1 second] + + + + + + uudecode + + + Usage: uudecode [OPTION] [FILE] + + + + Uudecode a uuencoded file. + + + + Options: + + + + + -o FILE Direct output to FILE + + + + + Example: + + + + + $ uudecode -o busybox busybox.uu + $ ls -l busybox + -rwxr-xr-x 1 ams ams 245264 Jun 7 21:35 busybox + + + + + + uuencode + + + Usage: uuencode [OPTION] [INFILE] OUTFILE + + + + Uuencode a file. + + + + Options: + + + + + -m Use base64 encoding as of RFC1521 + + + + + Example: + + + + + $ uuencode busybox busybox + begin 755 busybox + M?T5,1@$!`0````````````(``P`!````L+@$"#0```!0N@,``````#0`(``& + ..... + $ uudecode busybox busybox > busybox.uu + $ + + + + + + watchdog + + + Usage: watchdog device + + + + Periodically writes to watchdog device B. + + + + + wc + + + Usage: wc [OPTION]... [FILE]... + + + + Print line, word, and byte counts for each FILE, and a + total line if more than one FILE is specified. With no + FILE, read stdin. + + + + Options: + + + + + -c Print the byte counts + -l Print the newline counts + -L Print the length of the longest line + -w Print the word counts + + + + + Example: + + + + + $ wc /etc/passwd + 31 46 1365 /etc/passwd + + + + + + which + + + Usage: which [COMMAND]... + + + + Locate COMMAND(s). + + + + Example: + + + + + $ which login + /bin/login + + + + + + whoami + + + Usage: whoami + + + + Print the user name associated with the current + effective user id. + + + + Example: + + + + + $ whoami + andersen + + + + + + xargs + + + Usage: xargs [OPTIONS] [COMMAND] [ARGS...] + + + + Executes COMMAND on every item given by standard input. + + + + Options: + + + + + -t Print the command just before it is run + + + + + + Example: + + + + + $ ls | xargs gzip + $ find . -name '*.c' -print | xargs rm + + + + + + yes + + + Usage: yes [STRING]... + + + + Repeatedly output a line with all specified STRING(s), + or `y'. + + + + + zcat + + + Usage: zcat [OPTION]... FILE + + + + Uncompress FILE (or stdin if FILE is '-') to stdout. + + + + Options: + + + + + -t Test compressed file integrity + + + + + Example: + + + + + + + + + + + LIBC NSS + + + GNU Libc uses the Name Service Switch (NSS) to configure the + behavior of the C library for the local environment, and to + configure how it reads system data, such as passwords and group + information. BusyBox has made it Policy that it will never use + NSS, and will never use libc calls that make use of NSS. This + allows you to run an embedded system without the need for + installing an /etc/nsswitch.conf file and without /lib/libnss_* + libraries installed. + + + + If you are using a system that is using a remote LDAP server for + authentication via GNU libc NSS, and you want to use BusyBox, + then you will need to adjust the BusyBox source. Chances are + though, that if you have enough space to install of that stuff + on your system, then you probably want the full GNU utilities. + + + + + SEE ALSO + + + textutils(1), + shellutils(1), + etc... + + + + + MAINTAINER + + + Erik Andersen <andersen@codepoet.org> + + + + + AUTHORS + + + The following people have made significant contributions to + BusyBox -- whether they know it or not. + + + + Erik Andersen <andersen@codepoet.org> + + + + Edward Betts <edward@debian.org> + + + + John Beppu <beppu@codepoet.org> + + + + Brian Candler <B.Candler@pobox.com> + + + + Randolph Chung <tausq@debian.org> + + + + Dave Cinege <dcinege@psychosis.com> + + + + Karl M. Hegbloom <karlheg@debian.org> + + + + Daniel Jacobowitz <dan@debian.org> + + + + Matt Kraai <kraai@alumni.carnegiemellon.edu> + + + + John Lombardo <john@deltanet.com> + + + + Glenn McGrath <bug1@netconnect.com.au> + + + + Bruce Perens <bruce@perens.com> + + + + Chip Rosenthal <chip@unicom.com>, <crosenth@covad.com> + + + + Pavel Roskin <proski@gnu.org> + + + + Gyepi Sam <gyepi@praxis-sw.com> + + + + Linus Torvalds <torvalds@transmeta.com> + - + + Mark Whitley <markw@codepoet.org> + -BusyBox - The Swiss Army Knife of Embedded Linux + <para> + Charles P. Wright <cpwright@villagenet.com> + </para> - -NAME + <para> + Enrique Zanardi <ezanardi@ull.es> + </para> - - - - - - - -BusyBox - The Swiss Army Knife of Embedded Linux - - - - -SYNTAX - - - - - - - - - - BusyBox <function> [arguments...] # or - - - - - - - - <function> [arguments...] # if symlinked - - - - - - - -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 fileutils, shellutils, findutils, textutils, -grep, gzip, tar, etc. BusyBox provides a fairly complete POSIX environment -for any small or embedded system. 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 a kernel, a -shell (such as ash), and an editor (such as elvis-tiny or ae). - - - - - - -USAGE - - - - - - - - -When you create a link to BusyBox for the function you wish to use, when -BusyBox is called using that link it will behave as if the command itself -has been invoked. - - - - - -For example, entering - - - - - - - ln -s ./BusyBox ls - ./ls - - - - - - -will cause BusyBox to behave as 'ls' (if the 'ls' command has been compiled -into BusyBox). - - - - - -You can also invoke BusyBox by issuing the command as an argument on the -command line. For example, entering - - - - - - - ./BusyBox ls - - - - - - -will also cause BusyBox to behave as 'ls'. - - - - - - -COMMON OPTIONS - - - - - - - - -Most BusyBox commands support the --help option to provide a terse runtime description of their behavior. - - - - - - -COMMANDS - - - - - - - - -Currently defined functions include: - - - - - -ar, basename, cat, chgrp, chmod, chown, chroot, chvt, clear, cp, cut, date, -dc, dd, deallocvt, df, dirname, dmesg, du, dutmp, echo, false, fbset, -fdflush, find, free, freeramdisk, fsck.minix, grep, gunzip, gzip, halt, -head, hostid, hostname, id, init, insmod, kill, killall, length, ln, -loadacm, loadfont, loadkmap, logger, logname, ls, lsmod, makedevs, mkdir, -mkfifo, mkfs.minix, mknod, mkswap, mktemp, more, mount, mt, mv, nc, -nslookup, ping, poweroff, printf, ps, pwd, reboot, rm, rmdir, rmmod, sed, -setkeycodes, sfdisk, sh, sleep, sort, swapoff, swapon, sync, syslogd, tail, -tar, tee, telnet, test, touch, tr, true, tty, umount, uname, uniq, update, -uptime, usleep, uudecode, uuencode, wc, which, whoami, yes, zcat, [ - - - - - -------------------------------- - - - - - -ar - - - - - -Usage: ar [optxvV] archive [filenames] - - - - - -Extract or list files from an ar archive. - - - - - -Options: - - - - - - - o preserve original dates - p extract to stdout - t list - x extract - v verbosely list files processed - - - - - - -------------------------------- - - - - - -basename - - - - - -Usage: basename FILE [SUFFIX] - - - - - -Strips directory path and suffixes from FILE. If specified, also removes -any trailing SUFFIX. - - - - - -Example: - - - - - - - $ basename /usr/local/bin/foo - foo - $ basename /usr/local/bin/ - bin - $ basename /foo/bar.txt .txt - bar - - - - - - -------------------------------- - - - - - -cat - - - - - -Usage: cat [FILE ...] - - - - - -Concatenates FILE(s) and prints them to the standard -output. - - - - - -Example: - - - - - - - $ cat /proc/uptime - 110716.72 17.67 - - - - - - -------------------------------- - - - - - -chgrp - - - - - -Usage: chgrp [OPTION]... GROUP FILE... - - - - - -Change the group membership of each FILE to GROUP. - - - - - -Options: - - - - - - - -R change files and directories recursively - - - - - - -Example: - - - - - - - $ ls -l /tmp/foo - -r--r--r-- 1 andersen andersen 0 Apr 12 18:25 /tmp/foo - $ chgrp root /tmp/foo - $ ls -l /tmp/foo - -r--r--r-- 1 andersen root 0 Apr 12 18:25 /tmp/foo - - - - - - -------------------------------- - - - - - -chmod - - - - - -Usage: chmod [-R] MODE[,MODE]... FILE... - - - - - -Changes file access permissions for the specified -FILE(s) (or directories). Each MODE is defined by -combining the letters for WHO has access to the file, an OPERATOR for -selecting how the permissions should be changed, and a PERMISSION for -FILE(s) (or directories). - - - - - -WHO may be chosen from - - - - - - - u User who owns the file - g Users in the file's Group - o Other users not in the file's group - a All users - - - - - - -OPERATOR may be chosen from - - - - - - - + Add a permission - - Remove a permission - = Assign a permission - - - - - - -PERMISSION may be chosen from - - - - - - - r Read - w Write - x Execute (or access for directories) - s Set user (or group) ID bit - t Sticky bit (for directories prevents removing files by non-owners) - - - - - - -Alternately, permissions can be set numerically where the first three -numbers are calculated by adding the octal values, such as - - - - - - - 4 Read - 2 Write - 1 Execute - - - - - - -An optional fourth digit can also be used to specify - - - - - - - 4 Set user ID - 2 Set group ID - 1 Sticky bit - - - - - - -Options: - - - - - - - -R Change files and directories recursively. - - - - - - -Example: - - - - - - - $ ls -l /tmp/foo - -rw-rw-r-- 1 root root 0 Apr 12 18:25 /tmp/foo - $ chmod u+x /tmp/foo - $ ls -l /tmp/foo - -rwxrw-r-- 1 root root 0 Apr 12 18:25 /tmp/foo* - $ chmod 444 /tmp/foo - $ ls -l /tmp/foo - -r--r--r-- 1 root root 0 Apr 12 18:25 /tmp/foo - - - - - - -------------------------------- - - - - - -chown - - - - - -Usage: chown [OPTION]... OWNER[<.|:>[GROUP] FILE... - - - - - -Changes the owner and/or group of each FILE to OWNER and/or GROUP. - - - - - -Options: - - - - - - - -R Changes files and directories recursively - - - - - - -Example: - - - - - - - $ ls -l /tmp/foo - -r--r--r-- 1 andersen andersen 0 Apr 12 18:25 /tmp/foo - $ chown root /tmp/foo - $ ls -l /tmp/foo - -r--r--r-- 1 root andersen 0 Apr 12 18:25 /tmp/foo - $ chown root.root /tmp/foo - ls -l /tmp/foo - -r--r--r-- 1 root root 0 Apr 12 18:25 /tmp/foo - - - - - - -------------------------------- - - - - - -chroot - - - - - -Usage: chroot NEWROOT [COMMAND...] - - - - - -Run COMMAND with root directory set to NEWROOT. - - - - - -Example: - - - - - - - $ ls -l /bin/ls - lrwxrwxrwx 1 root root 12 Apr 13 00:46 /bin/ls -> /BusyBox - $ mount /dev/hdc1 /mnt -t minix - $ chroot /mnt - $ ls -l /bin/ls - -rwxr-xr-x 1 root root 40816 Feb 5 07:45 /bin/ls* - - - - - - -------------------------------- - - - - - -clear - - - - - -Clears the screen. - - - - - -------------------------------- - - - - - -chvt - - - - - -Usage: chvt N - - - - - -Changes the foreground virtual terminal to /dev/ttyN - - - - - -------------------------------- - - - - - -cp - - - - - -Usage: cp [OPTION]... SOURCE DEST - - - - - - - or: cp [OPTION]... SOURCE... DIRECTORY - - - - - - -Copies SOURCE to DEST, or multiple SOURCE(s) to -DIRECTORY. - - - - - -Options: - - - - - - - -a Same as -dpR - -d Preserves links - -p Preserves file attributes if possible - -R Copies directories recursively - - - - - - -------------------------------- - - - - - -cut - - - - - -Usage: cut [OPTION]... [FILE]... - - - - - -Prints selected fields from each input FILE to standard output. - - - - - -Options: - - - - - - - -b LIST Output only bytes from LIST - -c LIST Output only characters from LIST - -d CHAR Use CHAR instead of tab as the field delimiter - -s Only output Lines if the include DELIM - -f N Print only these fields - -n Ignored - - - - - - -Example: - - - - - - - $ echo "Hello world" | cut -f 1 -d ' ' - Hello - $ echo "Hello world" | cut -f 2 -d ' ' - world - - - - - - -------------------------------- - - - - - -date - - - - - -Usage: date [OPTION]... [+FORMAT] - - - - - - - or: date [OPTION] [MMDDhhmm[[CC]YY][.ss]] - - - - - - -Displays the current time in the given FORMAT, or sets the system date. - - - - - -Options: - - - - - - - -R Outputs RFC-822 compliant date string - -s Sets time described by STRING - -u Prints or sets Coordinated Universal Time - - - - - - -Example: - - - - - - - $ date - Wed Apr 12 18:52:41 MDT 2000 - - - - - - -------------------------------- - - - - - -dc - - - - - -Usage: dc expression ... - - - - - -This is a Tiny RPN calculator that understands the following operations: +, --, /, *, and, or, not, eor. If no arguments are given, dc will process -input from STDIN. - - - - - -The behaviour of BusyBox/dc deviates (just a little ;-) from GNU/dc, but -this will be remedied in the future. - - - - - -Example: - - - - - - - $ dc 2 2 + - 4 - $ dc 8 8 \* 2 2 + / - 16 - $ dc 0 1 and - 0 - $ dc 0 1 or - 1 - $ echo 72 9 div 8 mul | dc - 64 - - - - - - -------------------------------- - - - - - -dd - - - - - -Usage: dd [if=name] [of=name] [bs=n] [count=n] [skip=n] [seek=n] - - - - - -Copy a file, converting and formatting according to options - - - - - - - if=FILE read from FILE instead of stdin - of=FILE write to FILE instead of stdout - bs=n read and write n bytes at a time - count=n copy only n input blocks - skip=n skip n input blocks - seek=n skip n output blocks - - - - - - -Numbers may be suffixed by w (x2), k (x1024), b (x512), or M (x1024^2) - - - - - -Example: - - - - - - - $ dd if=/dev/zero of=/dev/ram1 bs=1M count=4 - 4+0 records in - 4+0 records out - - - - - - -------------------------------- - - - - - -df - - - - - -Usage: df [filesystem ...] - - - - - -Prints the filesystem space used and space available. - - - - - -Example: - - - - - - - $ df - Filesystem 1k-blocks Used Available Use% Mounted on - /dev/sda3 8690864 8553540 137324 98% / - /dev/sda1 64216 36364 27852 57% /boot - $ df /dev/sda3 - Filesystem 1k-blocks Used Available Use% Mounted on - /dev/sda3 8690864 8553540 137324 98% / - - - - - - -------------------------------- - - - - - -dirname - - - - - -Usage: dirname NAME - - - - - -Strip non-directory suffix from file name - - - - - -Example: - - - - - - - $ dirname /tmp/foo - /tmp - $ dirname /tmp/foo/ - /tmp - - - - - - -------------------------------- - - - - - -dmesg - - - - - -Usage: dmesg [-c] [-n level] [-s bufsize] - - - - - -Print or controls the kernel ring buffer. - - - - - -------------------------------- - - - - - -du - - - - - -Usage: du [OPTION]... [FILE]... - - - - - -Summarize disk space used for each FILE and/or directory. Disk space is -printed in units of 1k (i.e. 1024 bytes). - - - - - -Options: - - - - - - - -l count sizes many times if hard linked - -s display only a total for each argument - - - - - - -Example: - - - - - - - $ ./BusyBox du - 16 ./CVS - 12 ./kernel-patches/CVS - 80 ./kernel-patches - 12 ./tests/CVS - 36 ./tests - 12 ./scripts/CVS - 16 ./scripts - 12 ./docs/CVS - 104 ./docs - 2417 . - - - - - - -------------------------------- - - - - - -dutmp - - - - - -Usage: dutmp [FILE] - - - - - -Dump utmp file format (pipe delimited) from FILE or stdin to stdout. - - - - - -Example: - - - - - - - $ dutmp /var/run/utmp - 8|7||si|||0|0|0|955637625|760097|0 - 2|0|~|~~|reboot||0|0|0|955637625|782235|0 - 1|20020|~|~~|runlevel||0|0|0|955637625|800089|0 - 8|125||l4|||0|0|0|955637629|998367|0 - 6|245|tty1|1|LOGIN||0|0|0|955637630|998974|0 - 6|246|tty2|2|LOGIN||0|0|0|955637630|999498|0 - 7|336|pts/0|vt00andersen|andersen|:0.0|0|0|0|955637763|0|0 - - - - - - -------------------------------- - - - - - -echo - - - - - -Usage: echo [-neE] [ARG ...] - - - - - -Prints the specified ARGs to stdout - - - - - -Options: - - - - - - - -n suppress trailing newline - -e interpret backslash-escaped characters (i.e. \t=tab etc) - -E disable interpretation of backslash-escaped characters - - - - - - -Example: - - - - - - - $ echo "Erik is cool" - Erik is cool - $ echo -e "Erik\nis\ncool" - Erik - is - cool - $ echo "Erik\nis\ncool" - Erik\nis\ncool - - - - - - -------------------------------- - - - - - -false - - - - - -Returns an exit code of FALSE (1) - - - - - -Example: - - - - - - - $ false - $ echo $? - 1 - - - - - - -------------------------------- - - - - - -fbset - - - - - -Usage: fbset [options] [mode] - - - - - -Show and modify frame buffer device settings - - - - - -Options: - - - - - - - -h - -fb - -db - -a - -i - -g - -t - -accel - -hsync - -vsync - -laced - -double - - - - - - -Example: - - - - - - - $ fbset - mode "1024x768-76" - # D: 78.653 MHz, H: 59.949 kHz, V: 75.694 Hz - geometry 1024 768 1024 768 16 - timings 12714 128 32 16 4 128 4 - accel false - rgba 5/11,6/5,5/0,0/0 - endmode - - - - - - -------------------------------- - - - - - -fdflush - - - - - -Usage: fdflush device - - - - - -Force floppy disk drive to detect disk change - - - - - -------------------------------- - - - - - -find - - - - - -Usage: find [PATH...] [EXPRESSION] - - - - - -Search for files in a directory hierarchy. The default PATH is the current -directory; default EXPRESSION is '-print' - - - - - -EXPRESSION may consist of: - - - - - - - -follow Dereference symbolic links. - -name PATTERN File name (leading directories removed) matches PATTERN. - -print print the full file name followed by a newline to stdout. - - - - - - -Example: - - - - - - - $ find / -name /etc/passwd - /etc/passwd - - - - - - -------------------------------- - - - - - -free - - - - - -Usage: free - - - - - -Displays the amount of free and used system memory. - - - - - -Example: - - - - - - - $ free - total used free shared buffers - Mem: 257628 248724 8904 59644 93124 - Swap: 128516 8404 120112 - Total: 386144 257128 129016 - - - - - - -------------------------------- - - - - - -freeramdisk - - - - - -Usage: freeramdisk DEVICE - - - - - -Frees all memory used by the specified ramdisk. - - - - - -Example: - - - - - - - $ freeramdisk /dev/ram2 - - - - - - -------------------------------- - - - - - -deallocvt - - - - - -Usage: deallocvt N - - - - - -Deallocates unused virtual terminal /dev/ttyN - - - - - -------------------------------- - - - - - -fsck.minix - - - - - -Usage: fsck.minix [-larvsmf] /dev/name - - - - - -Performs a consistency check for MINIX filesystems. - - - - - -OPTIONS: - - - - - - - -l Lists all filenames - -r Perform interactive repairs - -a Perform automatic repairs - -v verbose - -s Outputs super-block information - -m Activates MINIX-like "mode not cleared" warnings - -f Force file system check. - - - - - - -------------------------------- - - - - - -grep - - - - - -Usage: grep [OPTIONS]... PATTERN [FILE]... - - - - - -Search for PATTERN in each FILE or standard input. - - - - - -OPTIONS: - - - - - - - -h suppress the prefixing filename on output - -i ignore case distinctions - -n print line number with output lines - -q be quiet. Returns 0 if result was found, 1 otherwise - -v select non-matching lines - - - - - - -This version of grep matches full regular expressions. - - - - - -Example: - - - - - - - $ grep root /etc/passwd - root:x:0:0:root:/root:/bin/bash - $ grep ^[rR]oo. /etc/passwd - root:x:0:0:root:/root:/bin/bash - - - - - - -------------------------------- - - - - - -gunzip - - - - - -Usage: gunzip [OPTION]... FILE - - - - - -Uncompress FILE (or standard input if FILE is '-'). - - - - - -Options: - - - - - - - -c Write output to standard output - -t Test compressed file integrity - - - - - - -Example: - - - - - - - $ ls -la /tmp/BusyBox* - -rw-rw-r-- 1 andersen andersen 557009 Apr 11 10:55 /tmp/BusyBox-0.43.tar.gz - $ gunzip /tmp/BusyBox-0.43.tar.gz - $ ls -la /tmp/BusyBox* - -rw-rw-r-- 1 andersen andersen 1761280 Apr 14 17:47 /tmp/BusyBox-0.43.tar - - - - - - -------------------------------- - - - - - -gzip - - - - - -Usage: gzip [OPTION]... FILE - - - - - -Compress FILE with maximum compression. When FILE is '-', reads standard -input. Implies -c. - - - - - -Options: - - - - - - - -c Write output to standard output instead of FILE.gz - - - - - - -Example: - - - - - - - $ ls -la /tmp/BusyBox* - -rw-rw-r-- 1 andersen andersen 1761280 Apr 14 17:47 /tmp/BusyBox-0.43.tar - $ gzip /tmp/BusyBox-0.43.tar - $ ls -la /tmp/BusyBox* - -rw-rw-r-- 1 andersen andersen 554058 Apr 14 17:49 /tmp/BusyBox-0.43.tar.gz - - - - - - -------------------------------- - - - - - -halt - - - - - -Usage: halt - - - - - -This command halts the system. - - - - - -------------------------------- - - - - - -head - - - - - -Usage: head [OPTION] [FILE]... - - - - - -Print first 10 lines of each FILE to standard output. With more than one -FILE, precede each with a header giving the file name. With no FILE, or -when FILE is -, read standard input. - - - - - -Options: - - - - - - - -n NUM Print first NUM lines instead of first 10 - - - - - - -Example: - - - - - - - $ head -n 2 /etc/passwd - root:x:0:0:root:/root:/bin/bash - daemon:x:1:1:daemon:/usr/sbin:/bin/sh - - - - - - -------------------------------- - - - - - -hostid - - - - - -Usage: hostid - - - - - -Prints out a unique 32-bit identifier for the current machine. The 32-bit -identifier is intended to be unique among all UNIX systems in existence. - - - - - -------------------------------- - - - - - -hostname - - - - - -Usage: hostname [OPTION] {hostname | -F file} - - - - - -Get or set the hostname or DNS domain name. If a hostname is given (or a -file with the -F parameter), the host name will be set. - - - - - -Options: - - - - - - - -s Short - -i Addresses for the hostname - -d DNS domain name - -F FILE Use the contents of FILE to specify the hostname - - - - - - -Example: - - - - - - - $ hostname - slag - - - - - - -------------------------------- - - - - - -id - - - - - -Print information for USERNAME or the current user - - - - - -Options: - - - - - - - -g prints only the group ID - -u prints only the user ID - -r prints the real user ID instead of the effective ID (with -ug) - - - - - - -Example: - - - - - - - $ id - uid=1000(andersen) gid=1000(andersen) - - - - - - -------------------------------- - - - - - -init - - - - - -Usage: init - - - - - -Init is the parent of all processes. - - - - - -This version of init is designed to be run only by the kernel. - - - - - -BusyBox init doesn't support multiple runlevels. The runlevels field of the -/etc/inittab file is completely ignored by BusyBox init. If you want -runlevels, use sysvinit. - - - - - -BusyBox init works just fine without an inittab. If no inittab is found, it -has the following default behavior: - - - - - - - ::sysinit:/etc/init.d/rcS - ::askfirst:/bin/sh - - - - - - -if it detects that /dev/console is _not_ a serial console, it will also -run: - - - - - - - tty2::askfirst:/bin/sh - - - - - - -If you choose to use an /etc/inittab file, the inittab entry format is as -follows: - - - - - - - <id>:<runlevels>:<action>:<process> - - - - - - - - <id>: - - - - - - - - WARNING: This field has a non-traditional meaning for BusyBox init! - The id field is used by BusyBox init to specify the controlling tty for - the specified process to run on. The contents of this field are - appended to "/dev/" and used as-is. There is no need for this field to - be unique, although if it isn't you may have strange results. If this - field is left blank, it is completely ignored. Also note that if - BusyBox detects that a serial console is in use, then all entries - containing non-empty id fields will _not_ be run. BusyBox init does - nothing with utmp. We don't need no stinkin' utmp. - - - - - - - - <runlevels>: - - - - - - - - The runlevels field is completely ignored. - - - - - - - - <action>: - - - - - - - - Valid actions include: sysinit, respawn, askfirst, wait, - once, and ctrlaltdel. - - - - - - - - askfirst acts just like respawn, but before running the specified - process it displays the line "Please press Enter to activate this - console." and then waits for the user to press enter before starting - the specified process. - - - - - - - - Unrecognized actions (like initdefault) will cause init to emit - an error message, and then go along with its business. - - - - - - - - <process>: - - - - - - - - Specifies the process to be executed and it's command line. - - - - - - -Example /etc/inittab file: - - - - - - - # This is run first except when booting in single-user mode. - # - ::sysinit:/etc/init.d/rcS - - - - - - - - # /bin/sh invocations on selected ttys - # - # Start an "askfirst" shell on the console (whatever that may be) - ::askfirst:/bin/sh - # Start an "askfirst" shell on /dev/tty2 - tty2::askfirst:/bin/sh - - - - - - - - # /sbin/getty invocations for selected ttys - # - tty4::respawn:/sbin/getty 38400 tty4 - tty5::respawn:/sbin/getty 38400 tty5 - - - - - - - - # Example of how to put a getty on a serial line (for a terminal) - # - #ttyS0::respawn:/sbin/getty -L ttyS0 9600 vt100 - #ttyS1::respawn:/sbin/getty -L ttyS1 9600 vt100 - # - # Example how to put a getty on a modem line. - #ttyS2::respawn:/sbin/getty -x0 -s 57600 ttyS2 - - - - - - - - # Stuff to do before rebooting - ::ctrlaltdel:/bin/umount -a -r > /dev/null 2>&1 - ::ctrlaltdel:/sbin/swapoff -a > /dev/null 2>&1 - - - - - - -------------------------------- - - - - - -insmod - - - - - -Usage: insmod [OPTION]... MODULE [symbol=value]... - - - - - -Loads the specified kernel modules into the kernel. - - - - - -Options: - - - - - - - -f Force module to load into the wrong kernel version. - -k Make module autoclean-able. - -v verbose output - -x do not export externs - - - - - - -------------------------------- - - - - - -kill - - - - - -Usage: kill [-signal] process-id [process-id ...] - - - - - -Send a signal (default is SIGTERM) to the specified -process(es). - - - - - -Options: - - - - - - - -l List all signal names and numbers. - - - - - - -Example: - - - - - - - $ ps | grep apache - 252 root root S [apache] - 263 www-data www-data S [apache] - 264 www-data www-data S [apache] - 265 www-data www-data S [apache] - 266 www-data www-data S [apache] - 267 www-data www-data S [apache] - $ kill 252 - - - - - - -------------------------------- - - - - - -killall - - - - - -Usage: killall [-signal] process-name [process-name ...] - - - - - -Send a signal (default is SIGTERM) to the specified -process(es). - - - - - -Options: - - - - - - - -l List all signal names and numbers. - - - - - - -Example: - - - - - - - $ killall apache - - - - - - -------------------------------- - - - - - -length - - - - - -Usage: length STRING - - - - - -Prints out the length of the specified STRING. - - - - - -Example: - - - - - - - $ length "Hello" - 5 - - - - - - -------------------------------- - - - - - -ln - - - - - -Usage: ln [OPTION] TARGET... LINK_NAME|DIRECTORY - - - - - -Create a link named LINK_NAME or DIRECTORY to the specified TARGET You may -use '--' to indicate that all following arguments are non-options. - - - - - -Options: - - - - - - - -s make symbolic links instead of hard links - -f remove existing destination files - - - - - - -Example: - - - - - - - $ ln -s BusyBox /tmp/ls - $ ls -l /tmp/ls - lrwxrwxrwx 1 root root 7 Apr 12 18:39 ls -> BusyBox* - - - - - - -------------------------------- - - - - - -loadacm - - - - - -Usage: loadacm - - - - - -Loads an acm from standard input. - - - - - -Example: - - - - - - - $ loadacm < /etc/i18n/acmname - - - - - - -------------------------------- - - - - - -loadfont - - - - - -Usage: loadfont - - - - - -Loads a console font from standard input. - - - - - -Example: - - - - - - - $ loadfont < /etc/i18n/fontname - - - - - - -------------------------------- - - - - - -loadkmap - - - - - -Usage: loadkmap - - - - - -Loads a binary keyboard translation table from standard input. - - - - - -Example: - - - - - - - $ loadkmap < /etc/i18n/lang-keymap - - - - - - -------------------------------- - - - - - -logger - - - - - -Usage: logger [OPTION]... [MESSAGE] - - - - - -Write MESSAGE to the system log. If MESSAGE is '-', log stdin. - - - - - -Options: - - - - - - - -s Log to stderr as well as the system log. - -t Log using the specified tag (defaults to user name). - -p Enter the message with the specified priority. - This may be numerical or a ``facility.level'' pair. - - - - - - -Example: - - - - - - - $ logger "hello" - - - - - - -------------------------------- - - - - - -logname - - - - - -Usage: logname - - - - - -Print the name of the current user. - - - - - -Example: - - - - - - - $ logname - root - - - - - - -------------------------------- - - - - - -ls - - - - - -Usage: ls [-1acdelnpuxACFR] [filenames...] - - - - - -Options: - - - - - - - -a do not hide entries starting with . - -c with -l: show ctime (the time of last - modification of file status information) - -d list directory entries instead of contents - -e list both full date and full time - -l use a long listing format - -n list numeric UIDs and GIDs instead of names - -p append indicator (one of /=@|) to entries - -u with -l: show access time (the time of last - access of the file) - -x list entries by lines instead of by columns - -A do not list implied . and .. - -C list entries by columns - -F append indicator (one of */=@|) to entries - -R list subdirectories recursively - - - - - - -------------------------------- - - - - - -lsmod - - - - - -Usage: lsmod - - - - - -Shows a list of all currently loaded kernel modules. - - - - - -------------------------------- - - - - - -makedevs - - - - - -Usage: makedevs NAME TYPE MAJOR MINOR FIRST LAST [s] - - - - - -Creates a range of block or character special files - - - - - -TYPEs include: - - - - - - - b: Make a block (buffered) device. - c or u: Make a character (un-buffered) device. - p: Make a named pipe. MAJOR and MINOR are ignored for named pipes. - - - - - - -FIRST specifies the number appended to NAME to create the first device. -LAST specifies the number of the last item that should be created. If 's' -is the last argument, the base device is created as well. - - - - - -Example: - - - - - - - $ makedevs /dev/ttyS c 4 66 2 63 - [creates ttyS2-ttyS63] - $ makedevs /dev/hda b 3 0 0 8 s - [creates hda,hda1-hda8] - - - - - - -------------------------------- - - - - - -md5sum - - - - - -Usage: md5sum [OPTION] [file ...] - - - - - -Print or check MD5 checksums. - - - - - -Options: - - - - - - - -b read files in binary mode - -c check MD5 sums against given list - -t read files in text mode (default) - -g read a string - - - - - - -The following two options are useful only when verifying checksums: - - - - - - - -s don't output anything, status code shows success - -w warn about improperly formated MD5 checksum lines - - - - - - -Example: - - - - - - - $ md5sum busybox - 6fd11e98b98a58f64ff3398d7b324003 busybox - $ md5sum -c - - 6fd11e98b98a58f64ff3398d7b324003 busybox - busybox: OK - ^D - - - - - - -------------------------------- - - - - - -mkdir - - - - - -Usage: mkdir [OPTION] DIRECTORY... - - - - - -Create the DIRECTORY(ies), if they do not already exist - - - - - -Options: - - - - - - - -m set permission mode (as in chmod), not rwxrwxrwx - umask - -p no error if directory exists, make parent directories as needed - - - - - - -Example: - - - - - - - $ mkdir /tmp/foo - $ mkdir /tmp/foo - /tmp/foo: File exists - $ mkdir /tmp/foo/bar/baz - /tmp/foo/bar/baz: No such file or directory - $ mkdir -p /tmp/foo/bar/baz - - - - - - -------------------------------- - - - - - -mkfifo - - - - - -Usage: mkfifo [OPTIONS] name - - - - - -Creates a named pipe (identical to 'mknod name p') - - - - - -Options: - - - - - - - -m create the pipe using the specified mode (default a=rw) - - - - - - -------------------------------- - - - - - -mkfs.minix - - - - - -Usage: mkfs.minix [-c | -l filename] [-nXX] [-iXX] /dev/name [blocks] - - - - - -Make a MINIX filesystem. - - - - - -OPTIONS: - - - - - - - -c Check the device for bad blocks - -n [14|30] Specify the maximum length of filenames - -i Specify the number of inodes for the filesystem - -l FILENAME Read the bad blocks list from FILENAME - -v Make a Minix version 2 filesystem - - - - - - -------------------------------- - - - - - -mknod - - - - - -Usage: mknod [OPTIONS] NAME TYPE MAJOR MINOR - - - - - -Create a special file (block, character, or pipe). - - - - - -Options: - - - - - - - -m create the special file using the specified mode (default a=rw) - - - - - - -TYPEs include: b: Make a block (buffered) device. c or u: Make a character -(un-buffered) device. p: Make a named pipe. MAJOR and MINOR are ignored for -named pipes. - - - - - -Example: - - - - - - - $ mknod /dev/fd0 b 2 0 - $ mknod -m 644 /tmp/pipe p - - - - - - -------------------------------- - - - - - -mkswap - - - - - -Usage: mkswap [-c] [-v0|-v1] device [block-count] - - - - - -Prepare a disk partition to be used as a swap partition. - - - - - -Options: - - - - - - - -c Check for read-ability. - -v0 Make version 0 swap [max 128 Megs]. - -v1 Make version 1 swap [big!] (default for kernels > 2.1.117). - block-count Number of block to use (default is entire partition). - - - - - - -------------------------------- - - - - - -mktemp - - - - - -Usage: mktemp [-q] TEMPLATE - - - - - -Creates a temporary file with its name based on TEMPLATE. TEMPLATE is any -name with six `Xs' (i.e. /tmp/temp.XXXXXX). - - - - - -Example: - - - - - - - $ mktemp /tmp/temp.XXXXXX - /tmp/temp.mWiLjM - $ ls -la /tmp/temp.mWiLjM - -rw------- 1 andersen andersen 0 Apr 25 17:10 /tmp/temp.mWiLjM - - - - - - -------------------------------- - - - - - -nc - - - - - -Usage: nc [IP] [port] - - - - - -Netcat opens a pipe to IP:port - - - - - -Example: - - - - - - - $ nc foobar.somedomain.com 25 - 220 foobar ESMTP Exim 3.12 #1 Sat, 15 Apr 2000 00:03:02 -0600 - help - 214-Commands supported: - 214- HELO EHLO MAIL RCPT DATA AUTH - 214 NOOP QUIT RSET HELP - quit - 221 foobar closing connection - - - - - - -------------------------------- - - - - - -more - - - - - -Usage: more [file ...] - - - - - -More is a filter for paging through text one screenful at a time. - - - - - -Example: - - - - - - - $ dmesg | more - - - - - - -------------------------------- - - - - - -mount - - - - - -Usage: mount [flags] mount [flags] device directory [-o options,more-options] - - - - - -Flags: - - - - - - - -a: Mount all file systems in fstab. - -o option: One of many filesystem options, listed below. - -r: Mount the filesystem read-only. - -t fs-type: Specify the filesystem type. - -w: Mount for reading and writing (default). - - - - - - -Options for use with the ``-o'' flag: - - - - - - - async/sync: Writes are asynchronous / synchronous. - atime/noatime: Enable / disable updates to inode access times. - dev/nodev: Allow use of special device files / disallow them. - exec/noexec: Allow use of executable files / disallow them. - loop: Mounts a file via loop device. - suid/nosuid: Allow set-user-id-root programs / disallow them. - remount: Re-mount a currently-mounted filesystem, changing its flags. - ro/rw: Mount for read-only / read-write. - There are EVEN MORE flags that are specific to each filesystem. - You'll have to see the written documentation for those. - - - - - - -Example: - - - - - - - $ mount - /dev/hda3 on / type minix (rw) - proc on /proc type proc (rw) - devpts on /dev/pts type devpts (rw) - $ mount /dev/fd0 /mnt -t msdos -o ro - $ mount /tmp/diskimage /opt -t ext2 -o loop - - - - - - -------------------------------- - - - - - -mt - - - - - -Usage: mt [-f device] opcode value - - - - - -Control magnetic tape drive operation - - - - - -------------------------------- - - - - - -mv - - - - - -Usage: mv SOURCE DEST - - - - - - - or: mv SOURCE... DIRECTORY - - - - - - -Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY. - - - - - -Example: - - - - - - - $ mv /tmp/foo /bin/bar - - - - - - -------------------------------- - - - - - -nslookup - - - - - -Usage: nslookup [HOST] - - - - - -Queries the nameserver for the IP address of the given HOST - - - - - -Example: - - - - - - - $ nslookup localhost - Server: default - Address: default - - - - - - - - Name: debian - Address: 127.0.0.1 - - - - - - -------------------------------- - - - - - -ping - - - - - -Usage: ping [OPTION]... host - - - - - -Send ICMP ECHO_REQUEST packets to network hosts. - - - - - -Options: - - - - - - - -c COUNT Send only COUNT pings. - -s SIZE Send SIZE data bytes in packets (default=56). - -q Quiet mode, only displays output at start - and when finished. -Example: - - - - - - - - $ ping localhost - PING slag (127.0.0.1): 56 data bytes - 64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=20.1 ms - - - - - - - - --- debian ping statistics --- - 1 packets transmitted, 1 packets received, 0% packet loss - round-trip min/avg/max = 20.1/20.1/20.1 ms - - - - - - -------------------------------- - - - - - -poweroff - - - - - -Shuts down the system, and requests that the kernel turn off power upon -halting. - - - - - -------------------------------- - - - - - -printf - - - - - -Usage: printf format [argument...] - - - - - -Formats and prints the given data in a manner similar to the C printf -command. - - - - - -Example: - - - - - - - $ printf "Val=%d\n" 5 - Val=5 - - - - - - -------------------------------- - - - - - -ps - - - - - -Usage: ps - - - - - -Report process status - - - - - -This version of ps accepts no options. - - - - - -Example: - - - - - - - $ ps - PID Uid Gid State Command - 1 root root S init - 2 root root S [kflushd] - 3 root root S [kupdate] - 4 root root S [kpiod] - 5 root root S [kswapd] - 742 andersen andersen S [bash] - 743 andersen andersen S -bash - 745 root root S [getty] - 2990 andersen andersen R ps - - - - - - -------------------------------- - - - - - -pwd - - - - - -Prints the full filename of the current working directory. - - - - - -Example: - - - - - - - $ pwd - /root - - - - - - -------------------------------- - - - - - -reboot - - - - - -Instructs the kernel to reboot the system. - - - - - -------------------------------- - - - - - -rm - - - - - -Usage: rm [OPTION]... FILE... - - - - - -Remove (unlink) the FILE(s). You may use '--' to -indicate that all following arguments are non-options. - - - - - -Options: - - - - - - - -f remove existing destinations, never prompt - -r or -R remove the contents of directories recursively - - - - - - -Example: - - - - - - - $ rm -rf /tmp/foo - - - - - - -------------------------------- - - - - - -rmdir - - - - - -Usage: rmdir [OPTION]... DIRECTORY... - - - - - -Remove the DIRECTORY(ies), if they are empty. - - - - - -Example: - - - - - - - # rmdir /tmp/foo - - - - - - -------------------------------- - - - - - -rmmod - - - - - -Usage: rmmod [OPTION]... [MODULE]... - - - - - -Unloads the specified kernel modules from the kernel. - - - - - -Options: - - - - - - - -a Try to remove all unused kernel modules. - - - - - - -Example: - - - - - - - $ rmmod tulip - - - - - - -------------------------------- - - - - - -sed - - - - - -Usage: sed [-n] -e script [file...] - - - - - -Allowed sed scripts come in the following form: - - - - - - - 'ADDR [!] COMMAND' - - - - - - - - where address ADDR can be: - NUMBER Match specified line number - $ Match last line - /REGEXP/ Match specified regexp - (! inverts the meaning of the match) - - - - - - - - and COMMAND can be: - s/regexp/replacement/[igp] - which attempt to match regexp against the pattern space - and if successful replaces the matched portion with replacement. - - - - - - - - aTEXT - which appends TEXT after the pattern space - - - - - - -Options: - - - - - - - -e add the script to the commands to be executed - -n suppress automatic printing of pattern space - - - - - - -This version of sed matches full regular expressions. - - - - - -Example: - - - - - - - $ echo "foo" | sed -e 's/f[a-zA-Z]o/bar/g' - bar - - - - - - -------------------------------- - - - - - -setkeycodes - - - - - -Usage: setkeycodes SCANCODE KEYCODE ... - - - - - -Set entries into the kernel's scancode-to-keycode map, allowing unusual -keyboards to generate usable keycodes. - - - - - -SCANCODE may be either xx or e0xx (hexadecimal), and KEYCODE is given in -decimal - - - - - -Example: - - - - - - - # setkeycodes e030 127 - - - - - - -------------------------------- - - - - - -sh - - - - - -Usage: sh - - - - - -lash -- the BusyBox LAme SHell (command interpreter) - - - - - -This command does not yet have proper documentation. - - - - - -Use lash just as you would use any other shell. It properly handles pipes, -redirects, job control, can be used as the shell for scripts (#!/bin/sh), -and has a sufficient set of builtins to do what is needed. It does not -(yet) support Bourne Shell syntax. If you need things like -``if-then-else'', ``while'', and such, use ash or bash. If you just need a -very simple and extremely small shell, this will do the job. - - - - - -------------------------------- - - - - - -sfdisk - - - - - -Usage: sfdisk [options] device ... - - - - - -device: something like /dev/hda or /dev/sda - - - - - -useful options: - - - - - - - -s [or --show-size]: list size of a partition - -c [or --id]: print or change partition Id - -l [or --list]: list partitions of each device - -d [or --dump]: idem, but in a format suitable for later input - -i [or --increment]: number cylinders etc. from 1 instead of from 0 - -uS, -uB, -uC, -uM: accept/report in units of sectors/blocks/cylinders/MB - -T [or --list-types]:list the known partition types - -D [or --DOS]: for DOS-compatibility: waste a little space - -R [or --re-read]: make kernel reread partition table - -N# : change only the partition with number # - -n : do not actually write to disk - -O file : save the sectors that will be overwritten to file - -I file : restore these sectors again - -v [or --version]: print version - -? [or --help]: print this message - - - - - - -dangerous options: - - - - - - - -g [or --show-geometry]: print the kernel's idea of the geometry - -x [or --show-extended]: also list extended partitions on output - - - - - - - - or expect descriptors for them on input - -L [or --Linux]: do not complain about things irrelevant for Linux - -q [or --quiet]: suppress warning messages - You can override the detected geometry using: - -C# [or --cylinders #]:set the number of cylinders to use - -H# [or --heads #]: set the number of heads to use - -S# [or --sectors #]: set the number of sectors to use - - - - - - -You can disable all consistency checking with: - - - - - - - -f [or --force]: do what I say, even if it is stupid - - - - - - -------------------------------- - - - - - -sleep - - - - - -Usage: sleep N - - - - - -Pause for N seconds. - - - - - -Example: - - - - - - - $ sleep 2 - [2 second delay results] - - - - - - -------------------------------- - - - - - -sort - - - - - -Usage: sort [-n] [-r] [FILE]... - - - - - -Sorts lines of text in the specified files - - - - - -Example: - - - - - - - $ echo -e "e\nf\nb\nd\nc\na" | sort - a - b - c - d - e - f - - - - - - -------------------------------- - - - - - -sync - - - - - -Usage: sync - - - - - -Write all buffered filesystem blocks to disk. - - - - - -------------------------------- - - - - - -syslogd - - - - - -Usage: syslogd [OPTION]... - - - - - -Linux system and kernel (provides klogd) logging utility. Note that this -version of syslogd/klogd ignores /etc/syslog.conf. - - - - - -Options: - - - - - - - -m NUM Interval between MARK lines (default=20min, 0=off) - -n Run as a foreground process - -K Do not start up the klogd process - -O FILE Use an alternate log file (default=/var/log/messages) - - - - - - -------------------------------- - - - - - -swapon - - - - - -Usage: swapon [OPTION] [device] - - - - - -Start swapping virtual memory pages on the given device. - - - - - -Options: - - - - - - - -a Start swapping on all swap devices - - - - - - -------------------------------- - - - - - -swapoff - - - - - -Usage: swapoff [OPTION] [device] - - - - - -Stop swapping virtual memory pages on the given device. - - - - - -Options: - - - - - - - -a Stop swapping on all swap devices - - - - - - -------------------------------- - - - - - -tail - - - - - -Usage: tail [OPTION] [FILE]... - - - - - -Print last 10 lines of each FILE to standard output. With more than one -FILE, precede each with a header giving the file name. With no FILE, or -when FILE is -, read standard input. - - - - - -Options: - - - - - - - -n NUM Print last NUM lines instead of first 10 - -f Output data as the file grows. This version - of 'tail -f' supports only one file at a time. - - - - - - -Example: - - - - - - - $ tail -n 1 /etc/resolv.conf - nameserver 10.0.0.1 - - - - - - -------------------------------- - - - - - -tar - - - - - -Usage: tar -[cxtvO] [--exclude File] [-f tarFile] [FILE] ... - - - - - -Create, extract, or list files from a tar file. Note that this version of -tar treats hard links as separate files. - - - - - -Main operation mode: - - - - - - - c create - x extract - t list - - - - - - -File selection: - - - - - - - f name of tarfile or "-" for stdin - O extract to stdout - --exclude file to exclude - - - - - - -Informative output: - - - - - - - v verbosely list files processed - - - - - - -Example: - - - - - - - $ zcat /tmp/tarball.tar.gz | tar -xf - - $ tar -cf /tmp/tarball.tar /usr/local - - - - - - -------------------------------- - - - - - -test, [ - - - - - -Usage: test EXPRESSION or [ EXPRESSION ] - - - - - -Checks file types and compares values returning an exit code determined by -the value of EXPRESSION. - - - - - -Example: - - - - - - - $ test 1 -eq 2 - $ echo $? - 1 - $ test 1 -eq 1 - $ echo $? - 0 - $ [ -d /etc ] - $ echo $? - 0 - $ [ -d /junk ] - $ echo $? - 1 - - - - - - -------------------------------- - - - - - -telnet - - - - - -Usage: telnet host [port] - - - - - -Telnet is used to establish interactive communication with another computer -over a network using the TELNET protocol. - - - - - -------------------------------- - - - - - -tee - - - - - -Usage: tee [OPTION]... [FILE]... - - - - - -Copy standard input to each FILE, and also to standard output. - - - - - -Options: - - - - - - - -a append to the given FILEs, do not overwrite - - - - - - -Example: - - - - - - - $ echo "Hello" | tee /tmp/foo - $ cat /tmp/foo - Hello - - - - - - -------------------------------- - - - - - -touch - - - - - -Usage: touch [-c] file [file ...] - - - - - -Update the last-modified date on (or create) the selected file[s]. - - - - - -Example: - - - - - - - $ ls -l /tmp/foo - /bin/ls: /tmp/foo: No such file or directory - $ touch /tmp/foo - $ ls -l /tmp/foo - -rw-rw-r-- 1 andersen andersen 0 Apr 15 01:11 /tmp/foo - - - - - - -------------------------------- - - - - - -tr - - - - - -Usage: tr [-cds] STRING1 [STRING2] - - - - - -Translate, squeeze, and/or delete characters from standard input, writing -to standard output. - - - - - -Options: - - - - - - - -c take complement of STRING1 - -d delete input characters coded STRING1 - -s squeeze multiple output characters of STRING2 into one character - - - - - - -Example: - - - - - - - $ echo "gdkkn vnqkc" | tr [a-y] [b-z] - hello world - - - - - - -------------------------------- - - - - - -true - - - - - -Returns an exit code of TRUE (0) - - - - - -Example: - - - - - - - $ true - $ echo $? - 0 - - - - - - -------------------------------- - - - - - -tty - - - - - -Usage: tty - - - - - -Print the file name of the terminal connected to standard input. - - - - - -Options: - - - - - - - -s print nothing, only return an exit status - - - - - - -Example: - - - - - - - $ tty - /dev/tty2 - - - - - - -------------------------------- - - - - - -uuencode - - - - - -Usage: uuencode [OPTION] [INFILE] REMOTEFILE - - - - - -Uuencode a file. - - - - - -Options: - - - - - - - -m use base64 encoding as of RFC1521 - - - - - - -Example: - - - - - - - $ uuencode busybox busybox - begin 755 busybox - M?T5,1@$!`0````````````(``P`!````L+@$"#0```!0N@,``````#0`(``& - ..... - $ uudecode busybox busybox > busybox.uu - $ - - - - - - -------------------------------- - - - - - -uudecode - - - - - -Usage: uudecode [OPTION] [FILE] - - - - - -Uudecode a uuencoded file - - - - - -Options: - - - - - - - -o FILE direct output to FILE - - - - - - -Example: - - - - - - - $ uudecode -o busybox busybox.uu - $ ls -l busybox - -rwxr-xr-x 1 ams ams 245264 Jun 7 21:35 busybox - - - - - - -------------------------------- - - - - - -umount - - - - - -Usage: umount [flags] filesystem|directory - - - - - -Flags: - - - - - - - -a: Unmount all file systems - -r: Try to remount devices as read-only if mount is busy - -f: Force filesystem umount (i.e. unreachable NFS server) - -l: Do not free loop device (if a loop device has been used) - - - - - - -Example: - - - - - - - $ umount /dev/hdc1 - - - - - - -------------------------------- - - - - - -uname - - - - - -Usage: uname [OPTION]... - - - - - -Print certain system information. With no OPTION, same as -s. - - - - - -Options: - - - - - - - -a print all information - -m the machine (hardware) type - -n print the machine's network node hostname - -r print the operating system release - -s print the operating system name - -p print the host processor type - -v print the operating system version - - - - - - -Example: - - - - - - - $ uname -a - Linux debian 2.2.15pre13 #5 Tue Mar 14 16:03:50 MST 2000 i686 unknown - - - - - - -------------------------------- - - - - - -uniq - - - - - -Usage: uniq [OPTION]... [INPUT [OUTPUT]] - - - - - -Discard all but one of successive identical lines from INPUT (or standard -input), writing to OUTPUT (or standard output). - - - - - -Example: - - - - - - - $ echo -e "a\na\nb\nc\nc\na" | sort | uniq - a - b - c - - - - - - -------------------------------- - - - - - -update - - - - - -Usage: update [options] - - - - - -Periodically flushes filesystem buffers. - - - - - -Options: - - - - - - - -S force use of sync(2) instead of flushing - -s SECS call sync this often (default 30) - -f SECS flush some buffers this often (default 5) - - - - - - -------------------------------- - - - - - -uptime - - - - - -Usage: uptime - - - - - -Tells how long the system has been running since boot. - - - - - -Example: - - - - - - - $ uptime - 1:55pm up 2:30, load average: 0.09, 0.04, 0.00 - - - - - - -------------------------------- - - - - - -usleep - - - - - -Usage: usleep N - - - - - -Pauses for N microseconds. - - - - - -Example: - - - - - - - $ usleep 1000000 - [pauses for 1 second] - - - - - - -------------------------------- - - - - - -wc - - - - - -Usage: wc [OPTION]... [FILE]... - - - - - -Print line, word, and byte counts for each FILE, and a total line if more -than one FILE is specified. With no FILE, read standard input. - - - - - -Options: - - - - - - - -c print the byte counts - -l print the newline counts - -L print the length of the longest line - -w print the word counts - - - - - - -Example: - - - - - - - $ wc /etc/passwd - 31 46 1365 /etc/passwd - - - - - - -------------------------------- - - - - - -which - - - - - -Usage: which [COMMAND ...] - - - - - -Locates a COMMAND. - - - - - -Example: - - - - - - - $ which login - /bin/login - - - - - - -------------------------------- - - - - - -whoami - - - - - -Usage: whoami - - - - - -Prints the user name associated with the current effective user id. - - - - - -Example: - - - - - - - $ whoami - andersen - - - - - - -------------------------------- - - - - - -yes - - - - - -Usage: yes [OPTION]... [STRING]... - - - - - -Repeatedly outputs a line with all specified STRING(s), -or `y'. - - - - - -------------------------------- - - - - - -zcat - - - - - -This is essentially an alias for invoking ``gunzip -c'', where it decompresses the file in question and send the output to -stdout. - - - - - -------------------------------- - - - - - - - - -LIBC NSS - - - - - - - - -GNU Libc uses the Name Service Switch (NSS) to configure the behavior of -the C library for the local environment, and to configure how it reads -system data, such as passwords and group information. BusyBox has made it -Policy that it will never use NSS, and will never use and libc calls that -make use of NSS. This allows you to run an embedded system without the need -for installing an /etc/nsswitch.conf file and without and /lib/libnss_* -libraries installed. - - - - - -If you are using a system that is using a remote LDAP server for -authentication via GNU libc NSS, and you want to use BusyBox, then you will -need to adjust the BusyBox source. Chances are though, that if you have -enough space to install of that stuff on your system, then you probably -want the full GNU utilities. - - - - - - -SEE ALSO - - - - - - - - -textutils(1), shellutils(1), etc... - - - - - - -MAINTAINER - - - - - - - - -Erik Andersen <andersee@debian.org> <andersen@lineo.com> - - - - - - -AUTHORS - - - - - - - - -The following people have contributed code to BusyBox whether they know it -or not. - - - - - -Erik Andersen <andersee@debian.org> - - - - - -John Beppu <beppu@lineo.com> - - - - - -Brian Candler <B.Candler@pobox.com> - - - - - -Randolph Chung <tausq@debian.org> - - - - - -Dave Cinege <dcinege@psychosis.com> - - - - - -Karl M. Hegbloom <karlheg@debian.org> - - - - - -John Lombardo <john@deltanet.com> - - - - - -Glenn McGrath <bug1@netconnect.com.au> - - - - - -Bruce Perens <bruce@perens.com> - - - - - -Pavel Roskin <proski@gnu.org> - - - - - -Linus Torvalds <torvalds@transmeta.com> - - - - - -Charles P. Wright <cpwright@villagenet.com> - - - - - -Enrique Zanardi <ezanardi@ull.es> - - - - - - - + + Vladimir Oleynik <dzo@simtreas.ru> + +