49b82c37d2756de5080e456b7ba32f0ea1c6fcf5
[oweals/busybox.git] / docs / busybox.sgml
1 <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V3.1//EN" [...]>
2 <book id="BusyBoxDocumentation">
3  <bookinfo>
4   <title>BusyBox - The Swiss Army Knife of Embedded Linux</title>
5   
6   <legalnotice>
7    <para>
8      This documentation is free software; you can redistribute
9      it and/or modify it under the terms of the GNU General Public
10      License as published by the Free Software Foundation; either
11      version 2 of the License, or (at your option) any later
12      version.
13    </para>
14       
15    <para>
16      This program is distributed in the hope that it will be
17      useful, but WITHOUT ANY WARRANTY; without even the implied
18      warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
19      See the GNU General Public License for more details.
20    </para>
21       
22    <para>
23      You should have received a copy of the GNU General Public
24      License along with this program; if not, write to the Free
25      Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
26      MA 02111-1307 USA
27    </para>
28       
29    <para>
30      For more details see the file COPYING in the source
31      distribution of Linux.
32    </para>
33   </legalnotice>
34  </bookinfo>
35
36 <toc></toc>
37   <chapter id="Introduction">
38      <title>Introduction</title>
39
40         <para>
41         BusyBox combines tiny versions of many common UNIX utilities into a single
42         small executable. It provides minimalist replacements for most of the
43         utilities you usually find in fileutils, shellutils, findutils, textutils,
44         grep, gzip, tar, etc. BusyBox provides a fairly complete POSIX environment
45         for any small or embedded system. The utilities in BusyBox generally have
46         fewer options than their full-featured GNU cousins; however, the options
47         that are included provide the expected functionality and behave very much
48         like their GNU counterparts. 
49         </para>
50
51         <para>
52         BusyBox has been written with size-optimization and limited resources in
53         mind. It is also extremely modular so you can easily include or exclude
54         commands (or features) at compile time. This makes it easy to customize
55         your embedded systems. To create a working system, just add a kernel, a
56         shell (such as ash), and an editor (such as elvis-tiny or ae).
57         </para>
58   </chapter>
59
60
61   <chapter id="Syntax">
62      <title>How to use BusyBox</title>
63         <sect1 id="How to use BusyBox">
64             <title>Syntax</title
65
66             <para>
67             <screen>
68              BusyBox &lt;function&gt; [arguments...]  # or
69             </screen>
70             </para>
71
72             <para>
73             <screen>
74              &lt;function&gt; [arguments...]          # if symlinked
75             </screen>
76             </para>
77         </sect1>
78
79
80         <sect1 id="Invoking BusyBox">
81             <para>
82             When you create a link to BusyBox for the function you wish to use, when
83             BusyBox is called using that link it will behave as if the command itself
84             has been invoked.
85             </para>
86
87             <para>
88             For example, entering
89             </para>
90
91             <para>
92             <screen>
93                     ln -s ./BusyBox ls
94                     ./ls
95             </screen>
96             </para>
97
98             <para>
99             will cause BusyBox to behave as 'ls' (if the 'ls' command has been compiled
100             into BusyBox). 
101             </para>
102
103             <para>
104             You can also invoke BusyBox by issuing the command as an argument on the
105             command line. For example, entering
106             </para>
107
108             <para>
109             <screen>
110                     ./BusyBox ls
111             </screen>
112             </para>
113
114             <para>
115             will also cause BusyBox to behave as 'ls'. 
116             </para>
117
118         </sect1>
119
120         <sect1 id="Common options">
121             <para>
122             Most BusyBox commands support the <emphasis>--help</emphasis> option to provide 
123             a terse runtime description of their behavior. 
124             </para>
125         </sect1>
126   </chapter>
127
128   <chapter id="Commands">
129      <title>BusyBox Commands</title>
130         <sect1 id="Available BusyBox Commands">
131             <title>Available BusyBox Commands</title>
132                 <para>
133                 Currently defined functions include:
134                 </para>
135
136                 <para>
137                 ar, basename, cat, chgrp, chmod, chown, chroot, chvt, clear, cp, cut, date,
138                 dc, dd, deallocvt, df, dirname, dmesg, du, dutmp, echo, false, fbset,
139                 fdflush, find, free, freeramdisk, fsck.minix, grep, gunzip, gzip, halt,
140                 head, hostid, hostname, id, init, insmod, kill, killall, length, ln,
141                 loadacm, loadfont, loadkmap, logger, logname, ls, lsmod, makedevs, mkdir,
142                 mkfifo, mkfs.minix, mknod, mkswap, mktemp, more, mount, mt, mv, nc,
143                 nslookup, ping, poweroff, printf, ps, pwd, reboot, rm, rmdir, rmmod, sed,
144                 setkeycodes, sfdisk, sh, sleep, sort, swapoff, swapon, sync, syslogd, tail,
145                 tar, tee, telnet, test, touch, tr, true, tty, umount, uname, uniq, update,
146                 uptime, usleep, uudecode, uuencode, wc, which, whoami, yes, zcat, [
147                 </para>
148         </sect1>
149
150
151         <sect1 id="ar">
152             <title>ar</title>
153
154                 <para>
155                 Usage: ar [optxvV] archive [filenames]
156                 </para>
157
158                 <para>
159                 Extract or list files from an ar archive.
160                 </para>
161
162                 <para>
163                 Options:
164                 </para>
165
166                 <para>
167                 <screen>
168                         o               preserve original dates
169                         p               extract to stdout
170                         t               list
171                         x               extract
172                         v               verbosely list files processed
173                 </screen>
174                 </para>
175         </sect1>
176
177
178
179
180         <sect1 id="basename">
181             <title>basename</title>
182                 <para>
183                 Usage: basename FILE [SUFFIX]
184                 </para>
185
186                 <para>
187                 Strips directory path and suffixes from FILE. If specified, also removes
188                 any trailing SUFFIX.
189                 </para>
190
191                 <para>
192                 Example:
193                 </para>
194
195                 <para>
196                 <screen>
197                         $ basename /usr/local/bin/foo
198                         foo
199                         $ basename /usr/local/bin/
200                         bin
201                         $ basename /foo/bar.txt .txt
202                         bar
203                 </screen>
204                 </para>
205         </sect1>
206
207
208         <sect1 id="cat">
209             <title>cat</title>
210
211                 <para>
212                 Usage: cat [FILE ...]
213                 </para>
214
215                 <para>
216                 Concatenates <literal>FILE(s)</literal> and prints them to the standard
217                 output.
218                 </para>
219
220                 <para>
221                 Example:
222                 </para>
223
224                 <para>
225                 <screen>
226                         $ cat /proc/uptime
227                         110716.72 17.67
228                 </screen>
229                 </para>
230
231         </sect1>
232
233
234
235         <sect1 id="chgrp">
236             <title>chgrp</title>
237
238             <para>
239             Usage: chgrp [OPTION]... GROUP FILE...
240             </para>
241
242             <para>
243             Change the group membership of each FILE to GROUP.
244             </para>
245
246             <para>
247             Options:
248             </para>
249
250             <para>
251             <screen>
252                     -R      change files and directories recursively
253             </screen>
254             </para>
255
256             <para>
257             Example:
258             </para>
259
260             <para>
261             <screen>
262                     $ ls -l /tmp/foo
263                     -r--r--r--    1 andersen andersen        0 Apr 12 18:25 /tmp/foo
264                     $ chgrp root /tmp/foo
265                     $ ls -l /tmp/foo
266                     -r--r--r--    1 andersen root            0 Apr 12 18:25 /tmp/foo
267             </screen>
268             </para>
269         </sect1>
270
271
272
273         <sect1 id="chmod">
274             <title>chmod</title>
275
276             <para>
277             Usage: chmod [<emphasis>-R</emphasis>] MODE[,MODE]... FILE...
278             </para>
279
280             <para>
281             Changes file access permissions for the specified
282             <literal>FILE(s)</literal> (or directories). Each MODE is defined by
283             combining the letters for WHO has access to the file, an OPERATOR for
284             selecting how the permissions should be changed, and a PERMISSION for
285             <literal>FILE(s)</literal> (or directories).
286             </para>
287
288             <para>
289             WHO may be chosen from
290             </para>
291
292             <para>
293             <screen>
294                     u       User who owns the file
295                     g       Users in the file's Group
296                     o       Other users not in the file's group
297                     a       All users
298             </screen>
299             </para>
300
301             <para>
302             OPERATOR may be chosen from
303             </para>
304
305             <para>
306             <screen>
307                     +       Add a permission
308                     -       Remove a permission
309                     =       Assign a permission
310             </screen>
311             </para>
312
313             <para>
314             PERMISSION may be chosen from
315             </para>
316
317             <para>
318             <screen>
319                     r       Read
320                     w       Write
321                     x       Execute (or access for directories)
322                     s       Set user (or group) ID bit
323                     t       Sticky bit (for directories prevents removing files by non-owners)
324             </screen>
325             </para>
326
327             <para>
328             Alternately, permissions can be set numerically where the first three
329             numbers are calculated by adding the octal values, such as
330             </para>
331
332             <para>
333             <screen>
334                     4       Read
335                     2       Write
336                     1       Execute
337             </screen>
338             </para>
339
340             <para>
341             An optional fourth digit can also be used to specify
342             </para>
343
344             <para>
345             <screen>
346                     4       Set user ID
347                     2       Set group ID
348                     1       Sticky bit
349             </screen>
350             </para>
351
352             <para>
353             Options:
354             </para>
355
356             <para>
357             <screen>
358                     -R      Change files and directories recursively.
359             </screen>
360             </para>
361
362             <para>
363             Example:
364             </para>
365
366             <para>
367             <screen>
368                     $ ls -l /tmp/foo
369                     -rw-rw-r--    1 root     root            0 Apr 12 18:25 /tmp/foo
370                     $ chmod u+x /tmp/foo
371                     $ ls -l /tmp/foo
372                     -rwxrw-r--    1 root     root            0 Apr 12 18:25 /tmp/foo*
373                     $ chmod 444 /tmp/foo
374                     $ ls -l /tmp/foo
375                     -r--r--r--    1 root     root            0 Apr 12 18:25 /tmp/foo
376             </screen>
377             </para>
378         </sect1>
379
380
381         
382         <sect1 id="chown">
383             <title>chown</title>
384                 <para>
385                 Usage: chown [OPTION]... OWNER[&lt;.|:&gt;[GROUP] FILE...
386                 </para>
387
388                 <para>
389                 Changes the owner and/or group of each FILE to OWNER and/or GROUP.
390                 </para>
391
392                 <para>
393                 Options:
394                 </para>
395
396                 <para>
397                 <screen>
398                         -R      Changes files and directories recursively
399                 </screen>
400                 </para>
401
402                 <para>
403                 Example:
404                 </para>
405
406                 <para>
407                 <screen>
408                         $ ls -l /tmp/foo
409                         -r--r--r--    1 andersen andersen        0 Apr 12 18:25 /tmp/foo
410                         $ chown root /tmp/foo
411                         $ ls -l /tmp/foo
412                         -r--r--r--    1 root     andersen        0 Apr 12 18:25 /tmp/foo
413                         $ chown root.root /tmp/foo
414                         ls -l /tmp/foo
415                         -r--r--r--    1 root     root            0 Apr 12 18:25 /tmp/foo
416                 </screen>
417                 </para>
418         </sect1>
419
420
421
422         <sect1 id="chroot">
423             <title>chroot</title>
424                 <para>
425                 Usage: chroot NEWROOT [COMMAND...]
426                 </para>
427
428                 <para>
429                 Run COMMAND with root directory set to NEWROOT.
430                 </para>
431
432                 <para>
433                 Example:
434                 </para>
435
436                 <para>
437                 <screen>
438                         $ ls -l /bin/ls
439                         lrwxrwxrwx    1 root     root          12 Apr 13 00:46 /bin/ls -&gt; /BusyBox
440                         $ mount /dev/hdc1 /mnt -t minix
441                         $ chroot /mnt
442                         $ ls -l /bin/ls
443                         -rwxr-xr-x    1 root     root        40816 Feb  5 07:45 /bin/ls*
444                 </screen>
445                 </para>
446         </sect1>
447
448
449         <sect1 id="chvt">
450             <title>chvt</title>
451                 <para>
452                 Usage: chvt N
453                 </para>
454
455                 <para>
456                 Changes the foreground virtual terminal to /dev/ttyN
457                 </para>
458         </sect1>
459
460
461
462
463         <sect1 id="clear">
464             <title>clear</title>
465
466                 <para>
467                 Usage: clear
468                 </para>
469
470                 <para>
471                 Clears the screen.
472                 </para>
473         </sect1>
474
475
476         <sect1 id="cp">
477             <title>cp</title>
478
479                 <para>
480                 Usage: cp [OPTION]... SOURCE DEST
481                 </para>
482
483                 <para>
484                 <screen>
485                    or: cp [OPTION]... SOURCE... DIRECTORY
486                 </screen>
487                 </para>
488
489                 <para>
490                 Copies SOURCE to DEST, or multiple <literal>SOURCE(s)</literal> to
491                 DIRECTORY.
492                 </para>
493
494                 <para>
495                 Options:
496                 </para>
497
498                 <para>
499                 <screen>
500                         -a      Same as -dpR
501                         -d      Preserves links
502                         -p      Preserves file attributes if possible
503                         -R      Copies directories recursively
504                 </screen>
505                 </para>
506         </sect1>
507
508
509         <sect1 id="cut">
510             <title>cut</title>
511
512                 <para>
513                 Usage: cut [OPTION]... [FILE]...
514                 </para>
515
516                 <para>
517                 Prints selected fields from each input FILE to standard output.
518                 </para>
519
520                 <para>
521                 Options:
522                 </para>
523
524                 <para>
525                 <screen>
526                                 -b LIST Output only bytes from LIST
527                                 -c LIST Output only characters from LIST
528                                 -d CHAR Use CHAR instead of tab as the field delimiter
529                                 -s      Only output Lines if the include DELIM
530                                 -f N    Print only these fields
531                                 -n      Ignored
532                 </screen>
533                 </para>
534
535                 <para>
536                 Example:
537                 </para>
538
539                 <para>
540                 <screen>
541                         $ echo "Hello world" | cut -f 1 -d ' '
542                         Hello
543                         $ echo "Hello world" | cut -f 2 -d ' '
544                         world
545                 </screen>
546                 </para>
547         </sect1>
548
549
550
551         <sect1 id="date">
552             <title>date</title>
553
554                 <para>
555                 Usage: date [OPTION]... [+FORMAT]
556                 </para>
557
558                 <para>
559                 <screen>
560                   or:  date [OPTION] [MMDDhhmm[[CC]YY][.ss]]
561                 </screen>
562                 </para>
563
564                 <para>
565                 Displays the current time in the given FORMAT, or sets the system date.
566                 </para>
567
568                 <para>
569                 Options:
570                 </para>
571
572                 <para>
573                 <screen>
574                         -R      Outputs RFC-822 compliant date string
575                         -s      Sets time described by STRING
576                         -u      Prints or sets Coordinated Universal Time
577                 </screen>
578                 </para>
579
580                 <para>
581                 Example:
582                 </para>
583
584                 <para>
585                 <screen>
586                         $ date
587                         Wed Apr 12 18:52:41 MDT 2000
588                 </screen>
589                 </para>
590         </sect1>
591
592
593
594 <!-- This is where I have stopped formatting stuff -->
595
596
597 </listitem></varlistentry>
598 <varlistentry><term><emphasis>dc
599
600 </emphasis></term>
601 <listitem><para></para>
602
603 <para>
604 Usage: dc expression ...
605
606
607 </para>
608
609 <para>
610 This is a Tiny RPN calculator that understands the following operations: +,
611 -, /, *, and, or, not, eor. If no arguments are given, dc will process
612 input from STDIN.
613
614
615 </para>
616
617 <para>
618 The behaviour of BusyBox/dc deviates (just a little ;-) from GNU/dc, but
619 this will be remedied in the future.
620
621
622 </para>
623
624 <para>
625 Example:
626
627
628 </para>
629
630 <para>
631 <screen>
632         $ dc 2 2 +
633         4
634         $ dc 8 8 \* 2 2 + /
635         16
636         $ dc 0 1 and
637         0
638         $ dc 0 1 or
639         1
640         $ echo 72 9 div 8 mul | dc
641         64
642 </screen>
643
644
645 </para>
646
647 <para>
648 -------------------------------
649
650
651 </para>
652
653 </listitem></varlistentry>
654 <varlistentry><term><emphasis>dd
655
656 </emphasis></term>
657 <listitem><para></para>
658
659 <para>
660 Usage: dd [if=name] [of=name] [bs=n] [count=n] [skip=n] [seek=n]
661
662
663 </para>
664
665 <para>
666 Copy a file, converting and formatting according to options
667
668
669 </para>
670
671 <para>
672 <screen>
673         if=FILE read from FILE instead of stdin
674         of=FILE write to FILE instead of stdout
675         bs=n    read and write n bytes at a time
676         count=n copy only n input blocks
677         skip=n  skip n input blocks
678         seek=n  skip n output blocks
679 </screen>
680
681
682 </para>
683
684 <para>
685 Numbers may be suffixed by w (x2), k (x1024), b (x512), or M (x1024^2)
686
687
688 </para>
689
690 <para>
691 Example:
692
693
694 </para>
695
696 <para>
697 <screen>
698         $ dd if=/dev/zero of=/dev/ram1 bs=1M count=4
699         4+0 records in
700         4+0 records out
701 </screen>
702
703
704 </para>
705
706 <para>
707 -------------------------------
708
709 </para>
710
711 </listitem></varlistentry>
712 <varlistentry><term><emphasis>deallocvt
713
714 </emphasis></term>
715 <listitem><para></para>
716
717 <para>
718 Usage: deallocvt N
719
720
721 </para>
722
723 <para>
724 Deallocates unused virtual terminal /dev/ttyN
725
726
727 </para>
728
729 <para>
730 -------------------------------
731
732
733
734 </para>
735
736 </listitem></varlistentry>
737 <varlistentry><term><emphasis>df
738
739 </emphasis></term>
740 <listitem><para></para>
741
742 <para>
743 Usage: df [filesystem ...]
744
745
746 </para>
747
748 <para>
749 Prints the filesystem space used and space available.
750
751
752 </para>
753
754 <para>
755 Example:
756
757
758 </para>
759
760 <para>
761 <screen>
762         $ df
763         Filesystem           1k-blocks      Used Available Use% Mounted on
764         /dev/sda3              8690864   8553540    137324  98% /
765         /dev/sda1                64216     36364     27852  57% /boot
766         $ df /dev/sda3
767         Filesystem           1k-blocks      Used Available Use% Mounted on
768         /dev/sda3              8690864   8553540    137324  98% /
769 </screen>
770
771
772 </para>
773
774 <para>
775 -------------------------------
776
777
778 </para>
779
780 </listitem></varlistentry>
781 <varlistentry><term><emphasis>dirname
782
783 </emphasis></term>
784 <listitem><para></para>
785
786 <para>
787 Usage: dirname NAME
788
789
790 </para>
791
792 <para>
793 Strip non-directory suffix from file name
794
795
796 </para>
797
798 <para>
799 Example:
800
801
802 </para>
803
804 <para>
805 <screen>
806         $ dirname /tmp/foo
807         /tmp
808         $ dirname /tmp/foo/
809         /tmp
810 </screen>
811
812
813 </para>
814
815 <para>
816 -------------------------------
817
818
819 </para>
820
821 </listitem></varlistentry>
822 <varlistentry><term><emphasis>dmesg
823
824 </emphasis></term>
825 <listitem><para></para>
826
827 <para>
828 Usage: dmesg [<emphasis>-c</emphasis>] [<emphasis>-n</emphasis> level] [<emphasis>-s</emphasis> bufsize]
829
830
831 </para>
832
833 <para>
834 Print or controls the kernel ring buffer.
835
836
837 </para>
838
839 <para>
840 -------------------------------
841
842
843 </para>
844
845 </listitem></varlistentry>
846 <varlistentry><term><emphasis>du
847
848 </emphasis></term>
849 <listitem><para></para>
850
851 <para>
852 Usage: du [OPTION]... [FILE]...
853
854
855 </para>
856
857 <para>
858 Summarize disk space used for each FILE and/or directory. Disk space is
859 printed in units of 1k (i.e. 1024 bytes).
860
861
862 </para>
863
864 <para>
865 Options:
866
867
868 </para>
869
870 <para>
871 <screen>
872         -l      count sizes many times if hard linked
873         -s      display only a total for each argument
874 </screen>
875
876
877 </para>
878
879 <para>
880 Example:
881
882
883 </para>
884
885 <para>
886 <screen>
887         $ ./BusyBox du
888         16      ./CVS
889         12      ./kernel-patches/CVS
890         80      ./kernel-patches
891         12      ./tests/CVS
892         36      ./tests
893         12      ./scripts/CVS
894         16      ./scripts
895         12      ./docs/CVS
896         104     ./docs
897         2417    .
898 </screen>
899
900
901 </para>
902
903 <para>
904 -------------------------------
905
906
907 </para>
908
909 </listitem></varlistentry>
910 <varlistentry><term><emphasis>dutmp
911
912 </emphasis></term>
913 <listitem><para></para>
914
915 <para>
916 Usage: dutmp [FILE]
917
918
919 </para>
920
921 <para>
922 Dump utmp file format (pipe delimited) from FILE or stdin to stdout.
923
924
925 </para>
926
927 <para>
928 Example:
929
930
931 </para>
932
933 <para>
934 <screen>
935         $ dutmp /var/run/utmp
936         8|7||si|||0|0|0|955637625|760097|0
937         2|0|~|~~|reboot||0|0|0|955637625|782235|0
938         1|20020|~|~~|runlevel||0|0|0|955637625|800089|0
939         8|125||l4|||0|0|0|955637629|998367|0
940         6|245|tty1|1|LOGIN||0|0|0|955637630|998974|0
941         6|246|tty2|2|LOGIN||0|0|0|955637630|999498|0
942         7|336|pts/0|vt00andersen|andersen|:0.0|0|0|0|955637763|0|0
943 </screen>
944
945
946 </para>
947
948 <para>
949 -------------------------------
950
951
952 </para>
953
954 </listitem></varlistentry>
955 <varlistentry><term><emphasis>echo
956
957 </emphasis></term>
958 <listitem><para></para>
959
960 <para>
961 Usage: echo [-neE] [ARG ...]
962
963
964 </para>
965
966 <para>
967 Prints the specified ARGs to stdout
968
969
970 </para>
971
972 <para>
973 Options:
974
975
976 </para>
977
978 <para>
979 <screen>
980         -n      suppress trailing newline
981         -e      interpret backslash-escaped characters (i.e. \t=tab etc)
982         -E      disable interpretation of backslash-escaped characters
983 </screen>
984
985
986 </para>
987
988 <para>
989 Example:
990
991
992 </para>
993
994 <para>
995 <screen>
996         $ echo "Erik is cool"
997         Erik is cool
998         $  echo -e "Erik\nis\ncool"
999         Erik
1000         is
1001         cool
1002         $ echo "Erik\nis\ncool"
1003         Erik\nis\ncool
1004 </screen>
1005
1006
1007 </para>
1008
1009 <para>
1010 -------------------------------
1011
1012
1013 </para>
1014
1015 </listitem></varlistentry>
1016 <varlistentry><term><emphasis>false
1017
1018 </emphasis></term>
1019 <listitem><para></para>
1020
1021 <para>
1022 Returns an exit code of FALSE (1)
1023
1024
1025 </para>
1026
1027 <para>
1028 Example:
1029
1030
1031 </para>
1032
1033 <para>
1034 <screen>
1035         $ false
1036         $ echo $?
1037         1
1038 </screen>
1039
1040
1041 </para>
1042
1043 <para>
1044 -------------------------------
1045
1046
1047 </para>
1048
1049 </listitem></varlistentry>
1050 <varlistentry><term><emphasis>fbset
1051
1052 </emphasis></term>
1053 <listitem><para></para>
1054
1055 <para>
1056 Usage: fbset [options] [mode]
1057
1058
1059 </para>
1060
1061 <para>
1062 Show and modify frame buffer device settings
1063
1064
1065 </para>
1066
1067 <para>
1068 Options:
1069
1070
1071 </para>
1072
1073 <para>
1074 <screen>
1075         -h
1076         -fb
1077         -db
1078         -a
1079         -i
1080         -g
1081         -t
1082         -accel
1083         -hsync
1084         -vsync
1085         -laced
1086         -double
1087 </screen>
1088
1089
1090 </para>
1091
1092 <para>
1093 Example:
1094
1095
1096 </para>
1097
1098 <para>
1099 <screen>
1100         $ fbset
1101         mode "1024x768-76"
1102                         # D: 78.653 MHz, H: 59.949 kHz, V: 75.694 Hz
1103                         geometry 1024 768 1024 768 16
1104                         timings 12714 128 32 16 4 128 4
1105                         accel false
1106                         rgba 5/11,6/5,5/0,0/0
1107         endmode
1108 </screen>
1109
1110
1111 </para>
1112
1113 <para>
1114 -------------------------------
1115
1116
1117 </para>
1118
1119 </listitem></varlistentry>
1120 <varlistentry><term><emphasis>fdflush
1121
1122 </emphasis></term>
1123 <listitem><para></para>
1124
1125 <para>
1126 Usage: fdflush device
1127
1128
1129 </para>
1130
1131 <para>
1132 Force floppy disk drive to detect disk change
1133
1134
1135 </para>
1136
1137 <para>
1138 -------------------------------
1139
1140
1141 </para>
1142
1143 </listitem></varlistentry>
1144 <varlistentry><term><emphasis>find
1145
1146 </emphasis></term>
1147 <listitem><para></para>
1148
1149 <para>
1150 Usage: find [PATH...] [EXPRESSION]
1151
1152
1153 </para>
1154
1155 <para>
1156 Search for files in a directory hierarchy. The default PATH is the current
1157 directory; default EXPRESSION is '-print'
1158
1159
1160 </para>
1161
1162 <para>
1163 EXPRESSION may consist of:
1164
1165
1166 </para>
1167
1168 <para>
1169 <screen>
1170         -follow                 Dereference symbolic links.
1171         -name PATTERN   File name (leading directories removed) matches PATTERN.
1172         -print                  print the full file name followed by a newline to stdout.
1173 </screen>
1174
1175
1176 </para>
1177
1178 <para>
1179 Example:
1180
1181
1182 </para>
1183
1184 <para>
1185 <screen>
1186         $ find / -name /etc/passwd
1187         /etc/passwd
1188 </screen>
1189
1190
1191 </para>
1192
1193 <para>
1194 -------------------------------
1195
1196
1197 </para>
1198
1199 </listitem></varlistentry>
1200 <varlistentry><term><emphasis>free
1201
1202 </emphasis></term>
1203 <listitem><para></para>
1204
1205 <para>
1206 Usage: free
1207
1208
1209 </para>
1210
1211 <para>
1212 Displays the amount of free and used system memory.
1213
1214
1215 </para>
1216
1217 <para>
1218 Example:
1219
1220
1221 </para>
1222
1223 <para>
1224 <screen>
1225         $ free
1226                                   total         used         free       shared      buffers
1227           Mem:       257628       248724         8904        59644        93124
1228          Swap:       128516         8404       120112
1229         Total:       386144       257128       129016
1230 </screen>
1231
1232
1233 </para>
1234
1235 <para>
1236 -------------------------------
1237
1238
1239 </para>
1240
1241 </listitem></varlistentry>
1242 <varlistentry><term><emphasis>freeramdisk
1243
1244 </emphasis></term>
1245 <listitem><para></para>
1246
1247 <para>
1248 Usage: freeramdisk DEVICE
1249
1250
1251 </para>
1252
1253 <para>
1254 Frees all memory used by the specified ramdisk.
1255
1256
1257 </para>
1258
1259 <para>
1260 Example:
1261
1262
1263 </para>
1264
1265 <para>
1266 <screen>
1267         $ freeramdisk /dev/ram2
1268 </screen>
1269
1270
1271 </para>
1272
1273 <para>
1274 -------------------------------
1275
1276
1277 </para>
1278
1279 </listitem></varlistentry>
1280 <varlistentry><term><emphasis>fsck.minix
1281
1282 </emphasis></term>
1283 <listitem><para></para>
1284
1285 <para>
1286 Usage: fsck.minix [<emphasis>-larvsmf</emphasis>] /dev/name
1287
1288
1289 </para>
1290
1291 <para>
1292 Performs a consistency check for MINIX filesystems.
1293
1294
1295 </para>
1296
1297 <para>
1298 OPTIONS:
1299
1300
1301 </para>
1302
1303 <para>
1304 <screen>
1305         -l      Lists all filenames
1306         -r      Perform interactive repairs
1307         -a      Perform automatic repairs
1308         -v      verbose
1309         -s      Outputs super-block information
1310         -m      Activates MINIX-like "mode not cleared" warnings
1311         -f      Force file system check.
1312 </screen>
1313
1314
1315 </para>
1316
1317 <para>
1318 -------------------------------
1319
1320
1321 </para>
1322
1323 </listitem></varlistentry>
1324 <varlistentry><term><emphasis>grep
1325
1326 </emphasis></term>
1327 <listitem><para></para>
1328
1329 <para>
1330 Usage: grep [OPTIONS]... PATTERN [FILE]...
1331
1332
1333 </para>
1334
1335 <para>
1336 Search for PATTERN in each FILE or standard input.
1337
1338
1339 </para>
1340
1341 <para>
1342 OPTIONS:
1343
1344
1345 </para>
1346
1347 <para>
1348 <screen>
1349         -h      suppress the prefixing filename on output
1350         -i      ignore case distinctions
1351         -n      print line number with output lines
1352         -q      be quiet. Returns 0 if result was found, 1 otherwise
1353         -v      select non-matching lines
1354 </screen>
1355
1356
1357 </para>
1358
1359 <para>
1360 This version of grep matches full regular expressions.
1361
1362
1363 </para>
1364
1365 <para>
1366 Example:
1367
1368
1369 </para>
1370
1371 <para>
1372 <screen>
1373         $ grep root /etc/passwd
1374         root:x:0:0:root:/root:/bin/bash
1375         $ grep ^[rR]oo. /etc/passwd
1376         root:x:0:0:root:/root:/bin/bash
1377 </screen>
1378
1379
1380 </para>
1381
1382 <para>
1383 -------------------------------
1384
1385
1386 </para>
1387
1388 </listitem></varlistentry>
1389 <varlistentry><term><emphasis>gunzip
1390
1391 </emphasis></term>
1392 <listitem><para></para>
1393
1394 <para>
1395 Usage: gunzip [OPTION]... FILE
1396
1397
1398 </para>
1399
1400 <para>
1401 Uncompress FILE (or standard input if FILE is '-').
1402
1403
1404 </para>
1405
1406 <para>
1407 Options:
1408
1409
1410 </para>
1411
1412 <para>
1413 <screen>
1414         -c      Write output to standard output
1415         -t      Test compressed file integrity
1416 </screen>
1417
1418
1419 </para>
1420
1421 <para>
1422 Example:
1423
1424
1425 </para>
1426
1427 <para>
1428 <screen>
1429         $ ls -la /tmp/BusyBox*
1430         -rw-rw-r--    1 andersen andersen   557009 Apr 11 10:55 /tmp/BusyBox-0.43.tar.gz
1431         $ gunzip /tmp/BusyBox-0.43.tar.gz
1432         $ ls -la /tmp/BusyBox*
1433         -rw-rw-r--    1 andersen andersen  1761280 Apr 14 17:47 /tmp/BusyBox-0.43.tar
1434 </screen>
1435
1436
1437 </para>
1438
1439 <para>
1440 -------------------------------
1441
1442
1443 </para>
1444
1445 </listitem></varlistentry>
1446 <varlistentry><term><emphasis>gzip
1447
1448 </emphasis></term>
1449 <listitem><para></para>
1450
1451 <para>
1452 Usage: gzip [OPTION]... FILE
1453
1454
1455 </para>
1456
1457 <para>
1458 Compress FILE with maximum compression. When FILE is '-', reads standard
1459 input. Implies <emphasis>-c</emphasis>.
1460
1461
1462 </para>
1463
1464 <para>
1465 Options:
1466
1467
1468 </para>
1469
1470 <para>
1471 <screen>
1472         -c      Write output to standard output instead of FILE.gz
1473 </screen>
1474
1475
1476 </para>
1477
1478 <para>
1479 Example:
1480
1481
1482 </para>
1483
1484 <para>
1485 <screen>
1486         $ ls -la /tmp/BusyBox*
1487         -rw-rw-r--    1 andersen andersen  1761280 Apr 14 17:47 /tmp/BusyBox-0.43.tar
1488         $ gzip /tmp/BusyBox-0.43.tar
1489         $ ls -la /tmp/BusyBox*
1490         -rw-rw-r--    1 andersen andersen   554058 Apr 14 17:49 /tmp/BusyBox-0.43.tar.gz
1491 </screen>
1492
1493
1494 </para>
1495
1496 <para>
1497 -------------------------------
1498
1499
1500 </para>
1501
1502 </listitem></varlistentry>
1503 <varlistentry><term><emphasis>halt
1504
1505 </emphasis></term>
1506 <listitem><para></para>
1507
1508 <para>
1509 Usage: halt
1510
1511
1512 </para>
1513
1514 <para>
1515 This command halts the system.
1516
1517
1518 </para>
1519
1520 <para>
1521 -------------------------------
1522
1523
1524 </para>
1525
1526 </listitem></varlistentry>
1527 <varlistentry><term><emphasis>head
1528
1529 </emphasis></term>
1530 <listitem><para></para>
1531
1532 <para>
1533 Usage: head [OPTION] [FILE]...
1534
1535
1536 </para>
1537
1538 <para>
1539 Print first 10 lines of each FILE to standard output. With more than one
1540 FILE, precede each with a header giving the file name. With no FILE, or
1541 when FILE is -, read standard input.
1542
1543
1544 </para>
1545
1546 <para>
1547 Options:
1548
1549
1550 </para>
1551
1552 <para>
1553 <screen>
1554         -n NUM          Print first NUM lines instead of first 10
1555 </screen>
1556
1557
1558 </para>
1559
1560 <para>
1561 Example:
1562
1563
1564 </para>
1565
1566 <para>
1567 <screen>
1568         $ head -n 2 /etc/passwd
1569         root:x:0:0:root:/root:/bin/bash
1570         daemon:x:1:1:daemon:/usr/sbin:/bin/sh
1571 </screen>
1572
1573
1574 </para>
1575
1576 <para>
1577 -------------------------------
1578
1579
1580 </para>
1581
1582 </listitem></varlistentry>
1583 <varlistentry><term><emphasis>hostid
1584
1585 </emphasis></term>
1586 <listitem><para></para>
1587
1588 <para>
1589 Usage: hostid
1590
1591
1592 </para>
1593
1594 <para>
1595 Prints out a unique 32-bit identifier for the current machine. The 32-bit
1596 identifier is intended to be unique among all UNIX systems in existence. 
1597
1598
1599 </para>
1600
1601 <para>
1602 -------------------------------
1603
1604
1605 </para>
1606
1607 </listitem></varlistentry>
1608 <varlistentry><term><emphasis>hostname
1609
1610 </emphasis></term>
1611 <listitem><para></para>
1612
1613 <para>
1614 Usage: hostname [OPTION] {hostname | <emphasis>-F</emphasis> file}
1615
1616
1617 </para>
1618
1619 <para>
1620 Get or set the hostname or DNS domain name. If a hostname is given (or a
1621 file with the <emphasis>-F</emphasis> parameter), the host name will be set.
1622
1623
1624 </para>
1625
1626 <para>
1627 Options:
1628
1629
1630 </para>
1631
1632 <para>
1633 <screen>
1634         -s              Short
1635         -i              Addresses for the hostname
1636         -d              DNS domain name
1637         -F FILE         Use the contents of FILE to specify the hostname
1638 </screen>
1639
1640
1641 </para>
1642
1643 <para>
1644 Example:
1645
1646
1647 </para>
1648
1649 <para>
1650 <screen>
1651         $ hostname
1652         slag 
1653 </screen>
1654
1655
1656 </para>
1657
1658 <para>
1659 -------------------------------
1660
1661
1662 </para>
1663
1664 </listitem></varlistentry>
1665 <varlistentry><term><emphasis>id
1666
1667 </emphasis></term>
1668 <listitem><para></para>
1669
1670 <para>
1671 Print information for USERNAME or the current user
1672
1673
1674 </para>
1675
1676 <para>
1677 Options:
1678
1679
1680 </para>
1681
1682 <para>
1683 <screen>
1684         -g      prints only the group ID
1685         -u      prints only the user ID
1686         -r      prints the real user ID instead of the effective ID (with -ug)
1687 </screen>
1688
1689
1690 </para>
1691
1692 <para>
1693 Example:
1694
1695
1696 </para>
1697
1698 <para>
1699 <screen>
1700         $ id
1701         uid=1000(andersen) gid=1000(andersen)
1702 </screen>
1703
1704
1705 </para>
1706
1707 <para>
1708 -------------------------------
1709
1710
1711 </para>
1712
1713 </listitem></varlistentry>
1714 <varlistentry><term><emphasis>init
1715
1716 </emphasis></term>
1717 <listitem><para></para>
1718
1719 <para>
1720 Usage: init
1721
1722
1723 </para>
1724
1725 <para>
1726 Init is the parent of all processes.
1727
1728
1729 </para>
1730
1731 <para>
1732 This version of init is designed to be run only by the kernel.
1733
1734
1735 </para>
1736
1737 <para>
1738 BusyBox init doesn't support multiple runlevels. The runlevels field of the
1739 /etc/inittab file is completely ignored by BusyBox init. If you want
1740 runlevels, use sysvinit.
1741
1742
1743 </para>
1744
1745 <para>
1746 BusyBox init works just fine without an inittab. If no inittab is found, it
1747 has the following default behavior:
1748
1749
1750 </para>
1751
1752 <para>
1753 <screen>
1754         ::sysinit:/etc/init.d/rcS
1755         ::askfirst:/bin/sh
1756 </screen>
1757
1758
1759 </para>
1760
1761 <para>
1762 if it detects that /dev/console is _not_ a serial console, it will also
1763 run:
1764
1765
1766 </para>
1767
1768 <para>
1769 <screen>
1770         tty2::askfirst:/bin/sh
1771 </screen>
1772
1773
1774 </para>
1775
1776 <para>
1777 If you choose to use an /etc/inittab file, the inittab entry format is as
1778 follows:
1779
1780
1781 </para>
1782
1783 <para>
1784 <screen>
1785         &lt;id&gt;:&lt;runlevels&gt;:&lt;action&gt;:&lt;process&gt;
1786 </screen>
1787
1788
1789 </para>
1790
1791 <para>
1792 <screen>
1793         &lt;id&gt;: 
1794 </screen>
1795
1796
1797 </para>
1798
1799 <para>
1800 <screen>
1801                 WARNING: This field has a non-traditional meaning for BusyBox init!
1802                 The id field is used by BusyBox init to specify the controlling tty for
1803                 the specified process to run on.  The contents of this field are
1804                 appended to "/dev/" and used as-is.  There is no need for this field to
1805                 be unique, although if it isn't you may have strange results.  If this
1806                 field is left blank, it is completely ignored.  Also note that if
1807                 BusyBox detects that a serial console is in use, then all entries
1808                 containing non-empty id fields will _not_ be run.  BusyBox init does
1809                 nothing with utmp.  We don't need no stinkin' utmp.
1810 </screen>
1811
1812
1813 </para>
1814
1815 <para>
1816 <screen>
1817         &lt;runlevels&gt;: 
1818 </screen>
1819
1820
1821 </para>
1822
1823 <para>
1824 <screen>
1825                 The runlevels field is completely ignored.
1826 </screen>
1827
1828
1829 </para>
1830
1831 <para>
1832 <screen>
1833         &lt;action&gt;: 
1834 </screen>
1835
1836
1837 </para>
1838
1839 <para>
1840 <screen>
1841                 Valid actions include: sysinit, respawn, askfirst, wait, 
1842                 once, and ctrlaltdel.
1843 </screen>
1844
1845
1846 </para>
1847
1848 <para>
1849 <screen>
1850                 askfirst acts just like respawn, but before running the specified
1851                 process it displays the line "Please press Enter to activate this
1852                 console." and then waits for the user to press enter before starting
1853                 the specified process.
1854 </screen>
1855
1856
1857 </para>
1858
1859 <para>
1860 <screen>
1861                 Unrecognized actions (like initdefault) will cause init to emit
1862                 an error message, and then go along with its business.
1863 </screen>
1864
1865
1866 </para>
1867
1868 <para>
1869 <screen>
1870         &lt;process&gt;: 
1871 </screen>
1872
1873
1874 </para>
1875
1876 <para>
1877 <screen>
1878                 Specifies the process to be executed and it's command line.
1879 </screen>
1880
1881
1882 </para>
1883
1884 <para>
1885 Example /etc/inittab file:
1886
1887
1888 </para>
1889
1890 <para>
1891 <screen>
1892         # This is run first except when booting in single-user mode.
1893         #
1894         ::sysinit:/etc/init.d/rcS
1895 </screen>
1896
1897
1898 </para>
1899
1900 <para>
1901 <screen>
1902         # /bin/sh invocations on selected ttys
1903         #
1904         # Start an "askfirst" shell on the console (whatever that may be)
1905         ::askfirst:/bin/sh
1906         # Start an "askfirst" shell on /dev/tty2
1907         tty2::askfirst:/bin/sh
1908 </screen>
1909
1910
1911 </para>
1912
1913 <para>
1914 <screen>
1915         # /sbin/getty invocations for selected ttys
1916         #
1917         tty4::respawn:/sbin/getty 38400 tty4
1918         tty5::respawn:/sbin/getty 38400 tty5
1919 </screen>
1920
1921
1922 </para>
1923
1924 <para>
1925 <screen>
1926         # Example of how to put a getty on a serial line (for a terminal)
1927         #
1928         #ttyS0::respawn:/sbin/getty -L ttyS0 9600 vt100
1929         #ttyS1::respawn:/sbin/getty -L ttyS1 9600 vt100
1930         #
1931         # Example how to put a getty on a modem line.
1932         #ttyS2::respawn:/sbin/getty -x0 -s 57600 ttyS2
1933 </screen>
1934
1935
1936 </para>
1937
1938 <para>
1939 <screen>
1940         # Stuff to do before rebooting
1941         ::ctrlaltdel:/bin/umount -a -r &gt; /dev/null 2&gt;&amp;1
1942         ::ctrlaltdel:/sbin/swapoff -a &gt; /dev/null 2&gt;&amp;1
1943 </screen>
1944
1945
1946 </para>
1947
1948 <para>
1949 -------------------------------
1950
1951
1952 </para>
1953
1954 </listitem></varlistentry>
1955 <varlistentry><term><emphasis>insmod
1956
1957 </emphasis></term>
1958 <listitem><para></para>
1959
1960 <para>
1961 Usage: insmod [OPTION]... MODULE [symbol=value]...
1962
1963
1964 </para>
1965
1966 <para>
1967 Loads the specified kernel modules into the kernel.
1968
1969
1970 </para>
1971
1972 <para>
1973 Options:
1974
1975
1976 </para>
1977
1978 <para>
1979 <screen>
1980                 -f      Force module to load into the wrong kernel version.
1981                 -k      Make module autoclean-able.
1982                 -v      verbose output
1983                 -x      do not export externs
1984 </screen>
1985
1986
1987 </para>
1988
1989 <para>
1990 -------------------------------
1991
1992
1993 </para>
1994
1995 </listitem></varlistentry>
1996 <varlistentry><term><emphasis>kill
1997
1998 </emphasis></term>
1999 <listitem><para></para>
2000
2001 <para>
2002 Usage: kill [<emphasis>-signal</emphasis>] process-id [process-id ...]
2003
2004
2005 </para>
2006
2007 <para>
2008 Send a signal (default is SIGTERM) to the specified
2009 <literal>process(es).</literal>
2010
2011
2012 </para>
2013
2014 <para>
2015 Options:
2016
2017
2018 </para>
2019
2020 <para>
2021 <screen>
2022         -l      List all signal names and numbers.
2023 </screen>
2024
2025
2026 </para>
2027
2028 <para>
2029 Example:
2030
2031
2032 </para>
2033
2034 <para>
2035 <screen>
2036         $ ps | grep apache
2037         252 root     root     S [apache]
2038         263 www-data www-data S [apache]
2039         264 www-data www-data S [apache]
2040         265 www-data www-data S [apache]
2041         266 www-data www-data S [apache]
2042         267 www-data www-data S [apache]
2043         $ kill 252
2044 </screen>
2045
2046
2047 </para>
2048
2049 <para>
2050 -------------------------------
2051
2052
2053 </para>
2054
2055 </listitem></varlistentry>
2056 <varlistentry><term><emphasis>killall
2057
2058 </emphasis></term>
2059 <listitem><para></para>
2060
2061 <para>
2062 Usage: killall [<emphasis>-signal</emphasis>] process-name [process-name ...]
2063
2064
2065 </para>
2066
2067 <para>
2068 Send a signal (default is SIGTERM) to the specified
2069 <literal>process(es).</literal>
2070
2071
2072 </para>
2073
2074 <para>
2075 Options:
2076
2077
2078 </para>
2079
2080 <para>
2081 <screen>
2082         -l      List all signal names and numbers.
2083 </screen>
2084
2085
2086 </para>
2087
2088 <para>
2089 Example:
2090
2091
2092 </para>
2093
2094 <para>
2095 <screen>
2096         $ killall apache
2097 </screen>
2098
2099
2100 </para>
2101
2102 <para>
2103 -------------------------------
2104
2105
2106 </para>
2107
2108 </listitem></varlistentry>
2109 <varlistentry><term><emphasis>length
2110
2111 </emphasis></term>
2112 <listitem><para></para>
2113
2114 <para>
2115 Usage: length STRING
2116
2117
2118 </para>
2119
2120 <para>
2121 Prints out the length of the specified STRING.
2122
2123
2124 </para>
2125
2126 <para>
2127 Example:
2128
2129
2130 </para>
2131
2132 <para>
2133 <screen>
2134         $ length "Hello"
2135         5
2136 </screen>
2137
2138
2139 </para>
2140
2141 <para>
2142 -------------------------------
2143
2144
2145 </para>
2146
2147 </listitem></varlistentry>
2148 <varlistentry><term><emphasis>ln
2149
2150 </emphasis></term>
2151 <listitem><para></para>
2152
2153 <para>
2154 Usage: ln [OPTION] TARGET... LINK_NAME|DIRECTORY
2155
2156
2157 </para>
2158
2159 <para>
2160 Create a link named LINK_NAME or DIRECTORY to the specified TARGET You may
2161 use '--' to indicate that all following arguments are non-options.
2162
2163
2164 </para>
2165
2166 <para>
2167 Options:
2168
2169
2170 </para>
2171
2172 <para>
2173 <screen>
2174         -s      make symbolic links instead of hard links
2175         -f      remove existing destination files
2176 </screen>
2177
2178
2179 </para>
2180
2181 <para>
2182 Example:
2183
2184
2185 </para>
2186
2187 <para>
2188 <screen>
2189     $ ln -s BusyBox /tmp/ls
2190     $ ls -l /tmp/ls
2191     lrwxrwxrwx    1 root     root            7 Apr 12 18:39 ls -&gt; BusyBox*
2192 </screen>
2193
2194
2195 </para>
2196
2197 <para>
2198 -------------------------------
2199
2200
2201 </para>
2202
2203 </listitem></varlistentry>
2204 <varlistentry><term><emphasis>loadacm
2205
2206 </emphasis></term>
2207 <listitem><para></para>
2208
2209 <para>
2210 Usage: loadacm
2211
2212
2213 </para>
2214
2215 <para>
2216 Loads an acm from standard input.
2217
2218
2219 </para>
2220
2221 <para>
2222 Example:
2223
2224
2225 </para>
2226
2227 <para>
2228 <screen>
2229         $ loadacm &lt; /etc/i18n/acmname
2230 </screen>
2231
2232
2233 </para>
2234
2235 <para>
2236 -------------------------------
2237
2238
2239 </para>
2240
2241 </listitem></varlistentry>
2242 <varlistentry><term><emphasis>loadfont
2243
2244 </emphasis></term>
2245 <listitem><para></para>
2246
2247 <para>
2248 Usage: loadfont
2249
2250
2251 </para>
2252
2253 <para>
2254 Loads a console font from standard input.
2255
2256
2257 </para>
2258
2259 <para>
2260 Example:
2261
2262
2263 </para>
2264
2265 <para>
2266 <screen>
2267         $ loadfont &lt; /etc/i18n/fontname
2268 </screen>
2269
2270
2271 </para>
2272
2273 <para>
2274 -------------------------------
2275
2276
2277 </para>
2278
2279 </listitem></varlistentry>
2280 <varlistentry><term><emphasis>loadkmap
2281
2282 </emphasis></term>
2283 <listitem><para></para>
2284
2285 <para>
2286 Usage: loadkmap
2287
2288
2289 </para>
2290
2291 <para>
2292 Loads a binary keyboard translation table from standard input.
2293
2294
2295 </para>
2296
2297 <para>
2298 Example:
2299
2300
2301 </para>
2302
2303 <para>
2304 <screen>
2305         $ loadkmap &lt; /etc/i18n/lang-keymap
2306 </screen>
2307
2308
2309 </para>
2310
2311 <para>
2312 -------------------------------
2313
2314
2315 </para>
2316
2317 </listitem></varlistentry>
2318 <varlistentry><term><emphasis>logger
2319
2320 </emphasis></term>
2321 <listitem><para></para>
2322
2323 <para>
2324 Usage: logger [OPTION]... [MESSAGE]
2325
2326
2327 </para>
2328
2329 <para>
2330 Write MESSAGE to the system log. If MESSAGE is '-', log stdin.
2331
2332
2333 </para>
2334
2335 <para>
2336 Options:
2337
2338
2339 </para>
2340
2341 <para>
2342 <screen>
2343         -s      Log to stderr as well as the system log.
2344         -t      Log using the specified tag (defaults to user name).
2345         -p      Enter the message with the specified priority.
2346                 This may be numerical or a ``facility.level'' pair.
2347 </screen>
2348
2349
2350 </para>
2351
2352 <para>
2353 Example:
2354
2355
2356 </para>
2357
2358 <para>
2359 <screen>
2360                 $ logger "hello"
2361 </screen>
2362
2363
2364 </para>
2365
2366 <para>
2367 -------------------------------
2368
2369
2370 </para>
2371
2372 </listitem></varlistentry>
2373 <varlistentry><term><emphasis>logname
2374
2375 </emphasis></term>
2376 <listitem><para></para>
2377
2378 <para>
2379 Usage: logname
2380
2381
2382 </para>
2383
2384 <para>
2385 Print the name of the current user.
2386
2387
2388 </para>
2389
2390 <para>
2391 Example:
2392
2393
2394 </para>
2395
2396 <para>
2397 <screen>
2398         $ logname
2399         root
2400 </screen>
2401
2402
2403 </para>
2404
2405 <para>
2406 -------------------------------
2407
2408
2409 </para>
2410
2411 </listitem></varlistentry>
2412 <varlistentry><term><emphasis>ls
2413
2414 </emphasis></term>
2415 <listitem><para></para>
2416
2417 <para>
2418 Usage: ls [<emphasis>-1acdelnpuxACFR</emphasis>] [filenames...]
2419
2420
2421 </para>
2422
2423 <para>
2424 Options:
2425
2426
2427 </para>
2428
2429 <para>
2430 <screen>
2431         -a      do not hide entries starting with .
2432         -c      with  -l:  show ctime (the time of last
2433                 modification of file status information)
2434         -d      list directory entries instead of contents
2435         -e      list both full date and full time
2436         -l      use a long listing format
2437         -n      list numeric UIDs and GIDs instead of names
2438         -p      append indicator (one of /=@|) to entries
2439         -u      with -l: show access time (the time of last
2440                 access of the file)
2441         -x      list entries by lines instead of by columns
2442         -A      do not list implied . and ..
2443         -C      list entries by columns
2444         -F      append indicator (one of */=@|) to entries
2445         -R  list subdirectories recursively
2446 </screen>
2447
2448
2449 </para>
2450
2451 <para>
2452 -------------------------------
2453
2454
2455 </para>
2456
2457 </listitem></varlistentry>
2458 <varlistentry><term><emphasis>lsmod
2459
2460 </emphasis></term>
2461 <listitem><para></para>
2462
2463 <para>
2464 Usage: lsmod
2465
2466
2467 </para>
2468
2469 <para>
2470 Shows a list of all currently loaded kernel modules.
2471
2472
2473 </para>
2474
2475 <para>
2476 -------------------------------
2477
2478
2479 </para>
2480
2481 </listitem></varlistentry>
2482 <varlistentry><term><emphasis>makedevs
2483
2484 </emphasis></term>
2485 <listitem><para></para>
2486
2487 <para>
2488 Usage: makedevs NAME TYPE MAJOR MINOR FIRST LAST [s]
2489
2490
2491 </para>
2492
2493 <para>
2494 Creates a range of block or character special files
2495
2496
2497 </para>
2498
2499 <para>
2500 TYPEs include:
2501
2502
2503 </para>
2504
2505 <para>
2506 <screen>
2507         b:      Make a block (buffered) device.
2508         c or u: Make a character (un-buffered) device.
2509         p:      Make a named pipe. MAJOR and MINOR are ignored for named pipes.
2510 </screen>
2511
2512
2513 </para>
2514
2515 <para>
2516 FIRST specifies the number appended to NAME to create the first device.
2517 LAST specifies the number of the last item that should be created. If 's'
2518 is the last argument, the base device is created as well.
2519
2520
2521 </para>
2522
2523 <para>
2524 Example:
2525
2526
2527 </para>
2528
2529 <para>
2530 <screen>
2531         $ makedevs /dev/ttyS c 4 66 2 63
2532         [creates ttyS2-ttyS63]
2533         $ makedevs /dev/hda b 3 0 0 8 s
2534         [creates hda,hda1-hda8]
2535 </screen>
2536
2537
2538 </para>
2539
2540 <para>
2541 -------------------------------
2542
2543
2544 </para>
2545
2546 </listitem></varlistentry>
2547 <varlistentry><term><emphasis>md5sum
2548
2549 </emphasis></term>
2550 <listitem><para></para>
2551
2552 <para>
2553 Usage: md5sum [OPTION] [file ...]
2554
2555
2556 </para>
2557
2558 <para>
2559 Print or check MD5 checksums.
2560
2561
2562 </para>
2563
2564 <para>
2565 Options:
2566
2567
2568 </para>
2569
2570 <para>
2571 <screen>
2572         -b       read files in binary mode
2573         -c       check MD5 sums against given list
2574         -t       read files in text mode (default)
2575         -g       read a string
2576 </screen>
2577
2578
2579 </para>
2580
2581 <para>
2582 The following two options are useful only when verifying checksums:
2583
2584
2585 </para>
2586
2587 <para>
2588 <screen>
2589         -s       don't output anything, status code shows success
2590         -w       warn about improperly formated MD5 checksum lines
2591 </screen>
2592
2593
2594 </para>
2595
2596 <para>
2597 Example:
2598
2599
2600 </para>
2601
2602 <para>
2603 <screen>
2604         $ md5sum busybox
2605         6fd11e98b98a58f64ff3398d7b324003  busybox
2606         $ md5sum -c -
2607         6fd11e98b98a58f64ff3398d7b324003  busybox
2608         busybox: OK
2609         ^D
2610 </screen>
2611
2612
2613 </para>
2614
2615 <para>
2616 -------------------------------
2617
2618
2619 </para>
2620
2621 </listitem></varlistentry>
2622 <varlistentry><term><emphasis>mkdir
2623
2624 </emphasis></term>
2625 <listitem><para></para>
2626
2627 <para>
2628 Usage: mkdir [OPTION] DIRECTORY...
2629
2630
2631 </para>
2632
2633 <para>
2634 Create the <literal>DIRECTORY(ies),</literal> if they do not already exist
2635
2636
2637 </para>
2638
2639 <para>
2640 Options:
2641
2642
2643 </para>
2644
2645 <para>
2646 <screen>
2647         -m      set permission mode (as in chmod), not rwxrwxrwx - umask
2648         -p      no error if directory exists, make parent directories as needed
2649 </screen>
2650
2651
2652 </para>
2653
2654 <para>
2655 Example:
2656
2657
2658 </para>
2659
2660 <para>
2661 <screen>
2662         $ mkdir /tmp/foo
2663         $ mkdir /tmp/foo
2664         /tmp/foo: File exists
2665         $ mkdir /tmp/foo/bar/baz
2666         /tmp/foo/bar/baz: No such file or directory
2667         $ mkdir -p /tmp/foo/bar/baz
2668 </screen>
2669
2670
2671 </para>
2672
2673 <para>
2674 -------------------------------
2675
2676
2677 </para>
2678
2679 </listitem></varlistentry>
2680 <varlistentry><term><emphasis>mkfifo
2681
2682 </emphasis></term>
2683 <listitem><para></para>
2684
2685 <para>
2686 Usage: mkfifo [OPTIONS] name
2687
2688
2689 </para>
2690
2691 <para>
2692 Creates a named pipe (identical to 'mknod name p')
2693
2694
2695 </para>
2696
2697 <para>
2698 Options:
2699
2700
2701 </para>
2702
2703 <para>
2704 <screen>
2705         -m      create the pipe using the specified mode (default a=rw)
2706 </screen>
2707
2708
2709 </para>
2710
2711 <para>
2712 -------------------------------
2713
2714
2715 </para>
2716
2717 </listitem></varlistentry>
2718 <varlistentry><term><emphasis>mkfs.minix
2719
2720 </emphasis></term>
2721 <listitem><para></para>
2722
2723 <para>
2724 Usage: mkfs.minix [<emphasis>-c</emphasis> | <emphasis>-l</emphasis> filename] [<emphasis>-nXX</emphasis>] [<emphasis>-iXX</emphasis>] /dev/name [blocks]
2725
2726
2727 </para>
2728
2729 <para>
2730 Make a MINIX filesystem.
2731
2732
2733 </para>
2734
2735 <para>
2736 OPTIONS:
2737
2738
2739 </para>
2740
2741 <para>
2742 <screen>
2743         -c              Check the device for bad blocks
2744         -n [14|30]      Specify the maximum length of filenames
2745         -i              Specify the number of inodes for the filesystem
2746         -l FILENAME     Read the bad blocks list from FILENAME
2747         -v              Make a Minix version 2 filesystem
2748 </screen>
2749
2750
2751 </para>
2752
2753 <para>
2754 -------------------------------
2755
2756
2757 </para>
2758
2759 </listitem></varlistentry>
2760 <varlistentry><term><emphasis>mknod
2761
2762 </emphasis></term>
2763 <listitem><para></para>
2764
2765 <para>
2766 Usage: mknod [OPTIONS] NAME TYPE MAJOR MINOR
2767
2768
2769 </para>
2770
2771 <para>
2772 Create a special file (block, character, or pipe).
2773
2774
2775 </para>
2776
2777 <para>
2778 Options:
2779
2780
2781 </para>
2782
2783 <para>
2784 <screen>
2785         -m      create the special file using the specified mode (default a=rw)
2786 </screen>
2787
2788
2789 </para>
2790
2791 <para>
2792 TYPEs include: b: Make a block (buffered) device. c or u: Make a character
2793 (un-buffered) device. p: Make a named pipe. MAJOR and MINOR are ignored for
2794 named pipes.
2795
2796
2797 </para>
2798
2799 <para>
2800 Example:
2801
2802
2803 </para>
2804
2805 <para>
2806 <screen>
2807         $ mknod /dev/fd0 b 2 0 
2808         $ mknod -m 644 /tmp/pipe p
2809 </screen>
2810
2811
2812 </para>
2813
2814 <para>
2815 -------------------------------
2816
2817
2818 </para>
2819
2820 </listitem></varlistentry>
2821 <varlistentry><term><emphasis>mkswap
2822
2823 </emphasis></term>
2824 <listitem><para></para>
2825
2826 <para>
2827 Usage: mkswap [<emphasis>-c</emphasis>] [<emphasis>-v0</emphasis>|<emphasis>-v1</emphasis>] device [block-count]
2828
2829
2830 </para>
2831
2832 <para>
2833 Prepare a disk partition to be used as a swap partition.
2834
2835
2836 </para>
2837
2838 <para>
2839 Options:
2840
2841
2842 </para>
2843
2844 <para>
2845 <screen>
2846         -c              Check for read-ability.
2847         -v0             Make version 0 swap [max 128 Megs].
2848         -v1             Make version 1 swap [big!] (default for kernels &gt; 2.1.117).
2849         block-count     Number of block to use (default is entire partition).
2850 </screen>
2851
2852
2853 </para>
2854
2855 <para>
2856 -------------------------------
2857
2858
2859 </para>
2860
2861 </listitem></varlistentry>
2862 <varlistentry><term><emphasis>mktemp
2863
2864 </emphasis></term>
2865 <listitem><para></para>
2866
2867 <para>
2868 Usage: mktemp [<emphasis>-q</emphasis>] TEMPLATE
2869
2870
2871 </para>
2872
2873 <para>
2874 Creates a temporary file with its name based on TEMPLATE. TEMPLATE is any
2875 name with six `Xs' (i.e. /tmp/temp.XXXXXX).
2876
2877
2878 </para>
2879
2880 <para>
2881 Example:
2882
2883
2884 </para>
2885
2886 <para>
2887 <screen>
2888         $ mktemp /tmp/temp.XXXXXX
2889         /tmp/temp.mWiLjM
2890         $ ls -la /tmp/temp.mWiLjM
2891         -rw-------    1 andersen andersen        0 Apr 25 17:10 /tmp/temp.mWiLjM
2892 </screen>
2893
2894
2895 </para>
2896
2897 <para>
2898 -------------------------------
2899
2900
2901 </para>
2902
2903 </listitem></varlistentry>
2904 <varlistentry><term><emphasis>more
2905
2906 </emphasis></term>
2907 <listitem><para></para>
2908
2909 <para>
2910 Usage: more [file ...]
2911
2912
2913 </para>
2914
2915 <para>
2916 More is a filter for paging through text one screenful at a time.
2917
2918
2919 </para>
2920
2921 <para>
2922 Example:
2923
2924
2925 </para>
2926
2927 <para>
2928 <screen>
2929         $ dmesg | more
2930 </screen>
2931
2932
2933 </para>
2934
2935 <para>
2936 -------------------------------
2937
2938
2939 </para>
2940
2941 </listitem></varlistentry>
2942 <varlistentry><term><emphasis>mount
2943
2944 </emphasis></term>
2945 <listitem><para></para>
2946
2947 <para>
2948 Usage: mount [flags] mount [flags] device directory [<emphasis>-o</emphasis> options,more-options]
2949
2950
2951 </para>
2952
2953 <para>
2954 Flags:
2955
2956
2957 </para>
2958
2959 <para>
2960 <screen>
2961         -a:             Mount all file systems in fstab.
2962         -o option:      One of many filesystem options, listed below.
2963         -r:             Mount the filesystem read-only.
2964         -t fs-type:     Specify the filesystem type.
2965         -w:             Mount for reading and writing (default).
2966 </screen>
2967
2968
2969 </para>
2970
2971 <para>
2972 Options for use with the ``<emphasis>-o</emphasis>'' flag:
2973
2974
2975 </para>
2976
2977 <para>
2978 <screen>
2979         async/sync:     Writes are asynchronous / synchronous.
2980         atime/noatime:  Enable / disable updates to inode access times.
2981         dev/nodev:      Allow use of special device files / disallow them.
2982         exec/noexec:    Allow use of executable files / disallow them.
2983         loop:           Mounts a file via loop device.
2984         suid/nosuid:    Allow set-user-id-root programs / disallow them.
2985         remount:        Re-mount a currently-mounted filesystem, changing its flags.
2986         ro/rw:          Mount for read-only / read-write.
2987         There are EVEN MORE flags that are specific to each filesystem.
2988         You'll have to see the written documentation for those.
2989 </screen>
2990
2991
2992 </para>
2993
2994 <para>
2995 Example:
2996
2997
2998 </para>
2999
3000 <para>
3001 <screen>
3002         $ mount
3003         /dev/hda3 on / type minix (rw)
3004         proc on /proc type proc (rw)
3005         devpts on /dev/pts type devpts (rw)
3006         $ mount /dev/fd0 /mnt -t msdos -o ro
3007         $ mount /tmp/diskimage /opt -t ext2 -o loop
3008 </screen>
3009
3010
3011 </para>
3012
3013 <para>
3014 -------------------------------
3015
3016
3017 </para>
3018
3019 </listitem></varlistentry>
3020 <varlistentry><term><emphasis>mt
3021
3022 </emphasis></term>
3023 <listitem><para></para>
3024
3025 <para>
3026 Usage: mt [<emphasis>-f</emphasis> device] opcode value
3027
3028
3029 </para>
3030
3031 <para>
3032 Control magnetic tape drive operation
3033
3034
3035 </para>
3036
3037 <para>
3038 -------------------------------
3039
3040
3041 </para>
3042
3043 </listitem></varlistentry>
3044 <varlistentry><term><emphasis>mv
3045
3046 </emphasis></term>
3047 <listitem><para></para>
3048
3049 <para>
3050 Usage: mv SOURCE DEST
3051
3052
3053 </para>
3054
3055 <para>
3056 <screen>
3057    or: mv SOURCE... DIRECTORY
3058 </screen>
3059
3060
3061 </para>
3062
3063 <para>
3064 Rename SOURCE to DEST, or move <literal>SOURCE(s)</literal> to DIRECTORY.
3065
3066
3067 </para>
3068
3069 <para>
3070 Example:
3071
3072
3073 </para>
3074
3075 <para>
3076 <screen>
3077         $ mv /tmp/foo /bin/bar
3078 </screen>
3079
3080
3081 </para>
3082
3083 <para>
3084 -------------------------------
3085
3086
3087 </para>
3088
3089 </listitem></varlistentry>
3090 <varlistentry><term><emphasis>nc
3091
3092 </emphasis></term>
3093 <listitem><para></para>
3094
3095 <para>
3096 Usage: nc [IP] [port]
3097
3098
3099 </para>
3100
3101 <para>
3102 Netcat opens a pipe to IP:port
3103
3104
3105 </para>
3106
3107 <para>
3108 Example:
3109
3110
3111 </para>
3112
3113 <para>
3114 <screen>
3115         $ nc foobar.somedomain.com 25
3116         220 foobar ESMTP Exim 3.12 #1 Sat, 15 Apr 2000 00:03:02 -0600
3117         help
3118         214-Commands supported:
3119         214-    HELO EHLO MAIL RCPT DATA AUTH
3120         214     NOOP QUIT RSET HELP
3121         quit
3122         221 foobar closing connection
3123 </screen>
3124
3125
3126 </para>
3127
3128 <para>
3129 -------------------------------
3130
3131
3132 </para>
3133
3134 </listitem></varlistentry>
3135 <varlistentry><term><emphasis>nslookup
3136
3137 </emphasis></term>
3138 <listitem><para></para>
3139
3140 <para>
3141 Usage: nslookup [HOST]
3142
3143
3144 </para>
3145
3146 <para>
3147 Queries the nameserver for the IP address of the given HOST
3148
3149
3150 </para>
3151
3152 <para>
3153 Example:
3154
3155
3156 </para>
3157
3158 <para>
3159 <screen>
3160         $ nslookup localhost
3161         Server:     default
3162         Address:    default
3163 </screen>
3164
3165
3166 </para>
3167
3168 <para>
3169 <screen>
3170         Name:       debian
3171         Address:    127.0.0.1
3172 </screen>
3173
3174
3175 </para>
3176
3177 <para>
3178 -------------------------------
3179
3180
3181 </para>
3182
3183 </listitem></varlistentry>
3184 <varlistentry><term><emphasis>ping
3185
3186 </emphasis></term>
3187 <listitem><para></para>
3188
3189 <para>
3190 Usage: ping [OPTION]... host
3191
3192
3193 </para>
3194
3195 <para>
3196 Send ICMP ECHO_REQUEST packets to network hosts.
3197
3198
3199 </para>
3200
3201 <para>
3202 Options:
3203
3204
3205 </para>
3206
3207 <para>
3208 <screen>
3209         -c COUNT        Send only COUNT pings.
3210         -s SIZE         Send SIZE data bytes in packets (default=56).
3211         -q              Quiet mode, only displays output at start
3212                         and when finished.
3213 Example:
3214 </screen>
3215
3216
3217 </para>
3218
3219 <para>
3220 <screen>
3221         $ ping localhost
3222         PING slag (127.0.0.1): 56 data bytes
3223         64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=20.1 ms
3224 </screen>
3225
3226
3227 </para>
3228
3229 <para>
3230 <screen>
3231         --- debian ping statistics ---
3232         1 packets transmitted, 1 packets received, 0% packet loss
3233         round-trip min/avg/max = 20.1/20.1/20.1 ms
3234 </screen>
3235
3236
3237 </para>
3238
3239 <para>
3240 -------------------------------
3241
3242
3243 </para>
3244
3245 </listitem></varlistentry>
3246 <varlistentry><term><emphasis>poweroff
3247
3248 </emphasis></term>
3249 <listitem><para></para>
3250
3251 <para>
3252 Shuts down the system, and requests that the kernel turn off power upon
3253 halting.
3254
3255
3256 </para>
3257
3258 <para>
3259 -------------------------------
3260
3261
3262 </para>
3263
3264 </listitem></varlistentry>
3265 <varlistentry><term><emphasis>printf
3266
3267 </emphasis></term>
3268 <listitem><para></para>
3269
3270 <para>
3271 Usage: printf format [argument...]
3272
3273
3274 </para>
3275
3276 <para>
3277 Formats and prints the given data in a manner similar to the C printf
3278 command.
3279
3280
3281 </para>
3282
3283 <para>
3284 Example:
3285
3286
3287 </para>
3288
3289 <para>
3290 <screen>
3291         $ printf "Val=%d\n" 5
3292         Val=5
3293 </screen>
3294
3295
3296 </para>
3297
3298 <para>
3299 -------------------------------
3300
3301
3302 </para>
3303
3304 </listitem></varlistentry>
3305 <varlistentry><term><emphasis>ps
3306
3307 </emphasis></term>
3308 <listitem><para></para>
3309
3310 <para>
3311 Usage: ps
3312
3313
3314 </para>
3315
3316 <para>
3317 Report process status
3318
3319
3320 </para>
3321
3322 <para>
3323 This version of ps accepts no options.
3324
3325
3326 </para>
3327
3328 <para>
3329 Example:
3330
3331
3332 </para>
3333
3334 <para>
3335 <screen>
3336         $ ps
3337   PID  Uid      Gid State Command
3338     1 root     root     S init
3339     2 root     root     S [kflushd]
3340     3 root     root     S [kupdate]
3341     4 root     root     S [kpiod]
3342     5 root     root     S [kswapd]
3343   742 andersen andersen S [bash]
3344   743 andersen andersen S -bash
3345   745 root     root     S [getty]
3346  2990 andersen andersen R ps
3347 </screen>
3348
3349
3350 </para>
3351
3352 <para>
3353 -------------------------------
3354
3355
3356 </para>
3357
3358 </listitem></varlistentry>
3359 <varlistentry><term><emphasis>pwd
3360
3361 </emphasis></term>
3362 <listitem><para></para>
3363
3364 <para>
3365 Prints the full filename of the current working directory.
3366
3367
3368 </para>
3369
3370 <para>
3371 Example:
3372
3373
3374 </para>
3375
3376 <para>
3377 <screen>
3378         $ pwd
3379         /root
3380 </screen>
3381
3382
3383 </para>
3384
3385 <para>
3386 -------------------------------
3387
3388
3389 </para>
3390
3391 </listitem></varlistentry>
3392 <varlistentry><term><emphasis>reboot
3393
3394 </emphasis></term>
3395 <listitem><para></para>
3396
3397 <para>
3398 Instructs the kernel to reboot the system.
3399
3400
3401 </para>
3402
3403 <para>
3404 -------------------------------
3405
3406
3407 </para>
3408
3409 </listitem></varlistentry>
3410 <varlistentry><term><emphasis>rm
3411
3412 </emphasis></term>
3413 <listitem><para></para>
3414
3415 <para>
3416 Usage: rm [OPTION]... FILE...
3417
3418
3419 </para>
3420
3421 <para>
3422 Remove (unlink) the <literal>FILE(s).</literal> You may use '--' to
3423 indicate that all following arguments are non-options.
3424
3425
3426 </para>
3427
3428 <para>
3429 Options:
3430
3431
3432 </para>
3433
3434 <para>
3435 <screen>
3436         -f              remove existing destinations, never prompt
3437         -r or -R        remove the contents of directories recursively
3438 </screen>
3439
3440
3441 </para>
3442
3443 <para>
3444 Example:
3445
3446
3447 </para>
3448
3449 <para>
3450 <screen>
3451         $ rm -rf /tmp/foo
3452 </screen>
3453
3454
3455 </para>
3456
3457 <para>
3458 -------------------------------
3459
3460
3461 </para>
3462
3463 </listitem></varlistentry>
3464 <varlistentry><term><emphasis>rmdir
3465
3466 </emphasis></term>
3467 <listitem><para></para>
3468
3469 <para>
3470 Usage: rmdir [OPTION]... DIRECTORY...
3471
3472
3473 </para>
3474
3475 <para>
3476 Remove the <literal>DIRECTORY(ies),</literal> if they are empty.
3477
3478
3479 </para>
3480
3481 <para>
3482 Example:
3483
3484
3485 </para>
3486
3487 <para>
3488 <screen>
3489         # rmdir /tmp/foo
3490 </screen>
3491
3492
3493 </para>
3494
3495 <para>
3496 -------------------------------
3497
3498
3499 </para>
3500
3501 </listitem></varlistentry>
3502 <varlistentry><term><emphasis>rmmod
3503
3504 </emphasis></term>
3505 <listitem><para></para>
3506
3507 <para>
3508 Usage: rmmod [OPTION]... [MODULE]...
3509
3510
3511 </para>
3512
3513 <para>
3514 Unloads the specified kernel modules from the kernel.
3515
3516
3517 </para>
3518
3519 <para>
3520 Options:
3521
3522
3523 </para>
3524
3525 <para>
3526 <screen>
3527         -a      Try to remove all unused kernel modules.
3528 </screen>
3529
3530
3531 </para>
3532
3533 <para>
3534 Example:
3535
3536
3537 </para>
3538
3539 <para>
3540 <screen>
3541         $ rmmod tulip
3542 </screen>
3543
3544
3545 </para>
3546
3547 <para>
3548 -------------------------------
3549
3550
3551 </para>
3552
3553 </listitem></varlistentry>
3554 <varlistentry><term><emphasis>sed
3555
3556 </emphasis></term>
3557 <listitem><para></para>
3558
3559 <para>
3560 Usage: sed [<emphasis>-n</emphasis>] <emphasis>-e</emphasis> script [file...]
3561
3562
3563 </para>
3564
3565 <para>
3566 Allowed sed scripts come in the following form:
3567
3568
3569 </para>
3570
3571 <para>
3572 <screen>
3573         'ADDR [!] COMMAND'
3574 </screen>
3575
3576
3577 </para>
3578
3579 <para>
3580 <screen>
3581         where address ADDR can be:
3582           NUMBER    Match specified line number
3583           $         Match last line
3584           /REGEXP/  Match specified regexp
3585           (! inverts the meaning of the match)
3586 </screen>
3587
3588
3589 </para>
3590
3591 <para>
3592 <screen>
3593         and COMMAND can be:
3594           s/regexp/replacement/[igp]
3595                  which attempt to match regexp against the pattern space
3596                  and if successful replaces the matched portion with replacement.
3597 </screen>
3598
3599
3600 </para>
3601
3602 <para>
3603 <screen>
3604           aTEXT
3605                  which appends TEXT after the pattern space
3606 </screen>
3607
3608
3609 </para>
3610
3611 <para>
3612 Options:
3613
3614
3615 </para>
3616
3617 <para>
3618 <screen>
3619         -e      add the script to the commands to be executed
3620         -n      suppress automatic printing of pattern space
3621 </screen>
3622
3623
3624 </para>
3625
3626 <para>
3627 This version of sed matches full regular expressions.
3628
3629
3630 </para>
3631
3632 <para>
3633 Example:
3634
3635
3636 </para>
3637
3638 <para>
3639 <screen>
3640         $ echo "foo" | sed -e 's/f[a-zA-Z]o/bar/g'
3641         bar
3642 </screen>
3643
3644
3645 </para>
3646
3647 <para>
3648 -------------------------------
3649
3650
3651 </para>
3652
3653 </listitem></varlistentry>
3654 <varlistentry><term><emphasis>setkeycodes
3655
3656 </emphasis></term>
3657 <listitem><para></para>
3658
3659 <para>
3660 Usage: setkeycodes SCANCODE KEYCODE ...
3661
3662
3663 </para>
3664
3665 <para>
3666 Set entries into the kernel's scancode-to-keycode map, allowing unusual
3667 keyboards to generate usable keycodes.
3668
3669
3670 </para>
3671
3672 <para>
3673 SCANCODE may be either xx or e0xx (hexadecimal), and KEYCODE is given in
3674 decimal
3675
3676
3677 </para>
3678
3679 <para>
3680 Example:
3681
3682
3683 </para>
3684
3685 <para>
3686 <screen>
3687         # setkeycodes e030 127
3688 </screen>
3689
3690
3691 </para>
3692
3693 <para>
3694 -------------------------------
3695
3696
3697 </para>
3698
3699 </listitem></varlistentry>
3700 <varlistentry><term><emphasis>sfdisk
3701
3702 </emphasis></term>
3703 <listitem><para></para>
3704
3705 <para>
3706 Usage: sfdisk [options] device ...
3707
3708
3709 </para>
3710
3711 <para>
3712 device: something like /dev/hda or /dev/sda
3713
3714
3715 </para>
3716
3717 <para>
3718 useful options:
3719
3720
3721 </para>
3722
3723 <para>
3724 <screen>
3725     -s [or --show-size]: list size of a partition
3726     -c [or --id]:        print or change partition Id
3727     -l [or --list]:      list partitions of each device
3728     -d [or --dump]:      idem, but in a format suitable for later input
3729     -i [or --increment]: number cylinders etc. from 1 instead of from 0
3730     -uS, -uB, -uC, -uM:  accept/report in units of sectors/blocks/cylinders/MB
3731     -T [or --list-types]:list the known partition types
3732     -D [or --DOS]:       for DOS-compatibility: waste a little space
3733     -R [or --re-read]:   make kernel reread partition table
3734     -N# :                change only the partition with number #
3735     -n :                 do not actually write to disk
3736     -O file :            save the sectors that will be overwritten to file
3737     -I file :            restore these sectors again
3738     -v [or --version]:   print version
3739     -? [or --help]:      print this message
3740 </screen>
3741
3742
3743 </para>
3744
3745 <para>
3746 dangerous options:
3747
3748
3749 </para>
3750
3751 <para>
3752 <screen>
3753     -g [or --show-geometry]: print the kernel's idea of the geometry
3754     -x [or --show-extended]: also list extended partitions on output
3755 </screen>
3756
3757
3758 </para>
3759
3760 <para>
3761 <screen>
3762                              or expect descriptors for them on input
3763     -L  [or --Linux]:      do not complain about things irrelevant for Linux
3764     -q  [or --quiet]:      suppress warning messages
3765     You can override the detected geometry using:
3766     -C# [or --cylinders #]:set the number of cylinders to use
3767     -H# [or --heads #]:    set the number of heads to use
3768     -S# [or --sectors #]:  set the number of sectors to use
3769 </screen>
3770
3771
3772 </para>
3773
3774 <para>
3775 You can disable all consistency checking with:
3776
3777
3778 </para>
3779
3780 <para>
3781 <screen>
3782     -f  [or --force]:      do what I say, even if it is stupid
3783 </screen>
3784
3785
3786 </para>
3787
3788 <para>
3789 -------------------------------
3790
3791
3792 </para>
3793
3794 </listitem></varlistentry>
3795 <varlistentry><term><emphasis>sh
3796
3797 </emphasis></term>
3798 <listitem><para></para>
3799
3800 <para>
3801 Usage: sh
3802
3803
3804 </para>
3805
3806 <para>
3807 lash -- the BusyBox LAme SHell (command interpreter)
3808
3809
3810 </para>
3811
3812 <para>
3813 This command does not yet have proper documentation.  
3814
3815
3816 </para>
3817
3818 <para>
3819 Use lash just as you would use any other shell. It properly handles pipes,
3820 redirects, job control, can be used as the shell for scripts (#!/bin/sh),
3821 and has a sufficient set of builtins to do what is needed. It does not
3822 (yet) support Bourne Shell syntax. If you need things like
3823 ``if-then-else'', ``while'', and such, use ash or bash. If you just need a
3824 very simple and extremely small shell, this will do the job.
3825
3826
3827 </para>
3828
3829 <para>
3830 -------------------------------
3831
3832
3833 </para>
3834
3835 </listitem></varlistentry>
3836 <varlistentry><term><emphasis>sleep
3837
3838 </emphasis></term>
3839 <listitem><para></para>
3840
3841 <para>
3842 Usage: sleep N
3843
3844
3845 </para>
3846
3847 <para>
3848 Pause for N seconds.
3849
3850
3851 </para>
3852
3853 <para>
3854 Example:
3855
3856
3857 </para>
3858
3859 <para>
3860 <screen>
3861         $ sleep 2
3862         [2 second delay results]
3863 </screen>
3864
3865
3866 </para>
3867
3868 <para>
3869 -------------------------------
3870
3871
3872 </para>
3873
3874 </listitem></varlistentry>
3875 <varlistentry><term><emphasis>sort
3876
3877 </emphasis></term>
3878 <listitem><para></para>
3879
3880 <para>
3881 Usage: sort [<emphasis>-n</emphasis>] [<emphasis>-r</emphasis>] [FILE]...
3882
3883
3884 </para>
3885
3886 <para>
3887 Sorts lines of text in the specified files
3888
3889
3890 </para>
3891
3892 <para>
3893 Example:
3894
3895
3896 </para>
3897
3898 <para>
3899 <screen>
3900         $ echo -e "e\nf\nb\nd\nc\na" | sort
3901         a
3902         b
3903         c
3904         d
3905         e
3906         f
3907 </screen>
3908
3909
3910 </para>
3911
3912 <para>
3913 -------------------------------
3914
3915
3916 </para>
3917
3918 </listitem></varlistentry>
3919 <varlistentry><term><emphasis>swapoff
3920
3921 </emphasis></term>
3922 <listitem><para></para>
3923
3924 <para>
3925 Usage: swapoff [OPTION] [device]
3926
3927
3928 </para>
3929
3930 <para>
3931 Stop swapping virtual memory pages on the given device.
3932
3933
3934 </para>
3935
3936 <para>
3937 Options:
3938
3939
3940 </para>
3941
3942 <para>
3943 <screen>
3944         -a      Stop swapping on all swap devices
3945 </screen>
3946
3947
3948 </para>
3949
3950 <para>
3951 -------------------------------
3952
3953
3954 </para>
3955
3956 </listitem></varlistentry>
3957 <varlistentry><term><emphasis>swapon
3958
3959 </emphasis></term>
3960 <listitem><para></para>
3961
3962 <para>
3963 Usage: swapon [OPTION] [device]
3964
3965
3966 </para>
3967
3968 <para>
3969 Start swapping virtual memory pages on the given device.
3970
3971
3972 </para>
3973
3974 <para>
3975 Options:
3976
3977
3978 </para>
3979
3980 <para>
3981 <screen>
3982         -a      Start swapping on all swap devices
3983 </screen>
3984
3985
3986 </para>
3987
3988 <para>
3989 -------------------------------
3990
3991
3992 </para>
3993
3994 </listitem></varlistentry>
3995 <varlistentry><term><emphasis>sync
3996
3997 </emphasis></term>
3998 <listitem><para></para>
3999
4000 <para>
4001 Usage: sync
4002
4003
4004 </para>
4005
4006 <para>
4007 Write all buffered filesystem blocks to disk.
4008
4009
4010 </para>
4011
4012 <para>
4013 -------------------------------
4014
4015
4016 </para>
4017
4018 </listitem></varlistentry>
4019 <varlistentry><term><emphasis>syslogd
4020
4021 </emphasis></term>
4022 <listitem><para></para>
4023
4024 <para>
4025 Usage: syslogd [OPTION]...
4026
4027
4028 </para>
4029
4030 <para>
4031 Linux system and kernel (provides klogd) logging utility. Note that this
4032 version of syslogd/klogd ignores /etc/syslog.conf.
4033
4034
4035 </para>
4036
4037 <para>
4038 Options:
4039
4040
4041 </para>
4042
4043 <para>
4044 <screen>
4045         -m NUM          Interval between MARK lines (default=20min, 0=off)
4046         -n              Run as a foreground process
4047         -K              Do not start up the klogd process
4048         -O FILE         Use an alternate log file (default=/var/log/messages)
4049 </screen>
4050
4051
4052 </para>
4053
4054 <para>
4055 -------------------------------
4056
4057
4058 </para>
4059
4060 </listitem></varlistentry>
4061 <varlistentry><term><emphasis>tail
4062
4063 </emphasis></term>
4064 <listitem><para></para>
4065
4066 <para>
4067 Usage: tail [OPTION] [FILE]...
4068
4069
4070 </para>
4071
4072 <para>
4073 Print last 10 lines of each FILE to standard output. With more than one
4074 FILE, precede each with a header giving the file name. With no FILE, or
4075 when FILE is -, read standard input.
4076
4077
4078 </para>
4079
4080 <para>
4081 Options:
4082
4083
4084 </para>
4085
4086 <para>
4087 <screen>
4088         -n NUM          Print last NUM lines instead of first 10
4089         -f              Output data as the file grows.  This version
4090                         of 'tail -f' supports only one file at a time.
4091 </screen>
4092
4093
4094 </para>
4095
4096 <para>
4097 Example:
4098
4099
4100 </para>
4101
4102 <para>
4103 <screen>
4104         $ tail -n 1 /etc/resolv.conf
4105         nameserver 10.0.0.1
4106 </screen>
4107
4108
4109 </para>
4110
4111 <para>
4112 -------------------------------
4113
4114
4115 </para>
4116
4117 </listitem></varlistentry>
4118 <varlistentry><term><emphasis>tar
4119
4120 </emphasis></term>
4121 <listitem><para></para>
4122
4123 <para>
4124 Usage: tar -[cxtvO] [<emphasis>--exclude</emphasis> File] [<emphasis>-f</emphasis> tarFile] [FILE] ...
4125
4126
4127 </para>
4128
4129 <para>
4130 Create, extract, or list files from a tar file. Note that this version of
4131 tar treats hard links as separate files.
4132
4133
4134 </para>
4135
4136 <para>
4137 Main operation mode:
4138
4139
4140 </para>
4141
4142 <para>
4143 <screen>
4144         c               create
4145         x               extract
4146         t               list
4147 </screen>
4148
4149
4150 </para>
4151
4152 <para>
4153 File selection:
4154
4155
4156 </para>
4157
4158 <para>
4159 <screen>
4160         f               name of tarfile or "-" for stdin
4161         O               extract to stdout
4162         --exclude       file to exclude
4163 </screen>
4164
4165
4166 </para>
4167
4168 <para>
4169 Informative output:
4170
4171
4172 </para>
4173
4174 <para>
4175 <screen>
4176         v               verbosely list files processed
4177 </screen>
4178
4179
4180 </para>
4181
4182 <para>
4183 Example:
4184
4185
4186 </para>
4187
4188 <para>
4189 <screen>
4190         $ zcat /tmp/tarball.tar.gz | tar -xf -
4191         $ tar -cf /tmp/tarball.tar /usr/local
4192 </screen>
4193
4194
4195 </para>
4196
4197 <para>
4198 -------------------------------
4199
4200
4201 </para>
4202
4203 </listitem></varlistentry>
4204 <varlistentry><term><emphasis>tee
4205
4206 </emphasis></term>
4207 <listitem><para></para>
4208
4209 <para>
4210 Usage: tee [OPTION]... [FILE]...
4211
4212
4213 </para>
4214
4215 <para>
4216 Copy standard input to each FILE, and also to standard output.
4217
4218
4219 </para>
4220
4221 <para>
4222 Options:
4223
4224
4225 </para>
4226
4227 <para>
4228 <screen>
4229         -a      append to the given FILEs, do not overwrite
4230 </screen>
4231
4232
4233 </para>
4234
4235 <para>
4236 Example:
4237
4238
4239 </para>
4240
4241 <para>
4242 <screen>
4243         $ echo "Hello" | tee /tmp/foo
4244         $ cat /tmp/foo
4245         Hello
4246 </screen>
4247
4248
4249 </para>
4250
4251 <para>
4252 -------------------------------
4253
4254
4255 </para>
4256
4257 </listitem></varlistentry>
4258 <varlistentry><term><emphasis>telnet
4259
4260 </emphasis></term>
4261 <listitem><para></para>
4262
4263 <para>
4264 Usage: telnet host [port]
4265
4266
4267 </para>
4268
4269 <para>
4270 Telnet is used to establish interactive communication with another computer
4271 over a network using the TELNET protocol.
4272
4273
4274 </para>
4275
4276 <para>
4277 -------------------------------
4278
4279
4280 </para>
4281
4282 </listitem></varlistentry>
4283 <varlistentry><term><emphasis>test, [
4284
4285 </emphasis></term>
4286 <listitem><para></para>
4287
4288 <para>
4289 Usage: test EXPRESSION or [ EXPRESSION ]
4290
4291
4292 </para>
4293
4294 <para>
4295 Checks file types and compares values returning an exit code determined by
4296 the value of EXPRESSION.
4297
4298
4299 </para>
4300
4301 <para>
4302 Example:
4303
4304
4305 </para>
4306
4307 <para>
4308 <screen>
4309         $ test 1 -eq 2
4310         $ echo $?
4311         1
4312         $ test 1 -eq 1
4313         $ echo $?
4314         0
4315         $ [ -d /etc ]
4316         $ echo $?
4317         0
4318         $ [ -d /junk ]
4319         $ echo $?
4320         1
4321 </screen>
4322
4323
4324 </para>
4325
4326 <para>
4327 -------------------------------
4328
4329
4330 </para>
4331
4332 </listitem></varlistentry>
4333 <varlistentry><term><emphasis>touch
4334
4335 </emphasis></term>
4336 <listitem><para></para>
4337
4338 <para>
4339 Usage: touch [<emphasis>-c</emphasis>] file [file ...]
4340
4341
4342 </para>
4343
4344 <para>
4345 Update the last-modified date on (or create) the selected file[s].
4346
4347
4348 </para>
4349
4350 <para>
4351 Example:
4352
4353
4354 </para>
4355
4356 <para>
4357 <screen>
4358         $ ls -l /tmp/foo
4359         /bin/ls: /tmp/foo: No such file or directory
4360         $ touch /tmp/foo
4361         $ ls -l /tmp/foo
4362         -rw-rw-r--    1 andersen andersen        0 Apr 15 01:11 /tmp/foo
4363 </screen>
4364
4365
4366 </para>
4367
4368 <para>
4369 -------------------------------
4370
4371
4372 </para>
4373
4374 </listitem></varlistentry>
4375 <varlistentry><term><emphasis>tr
4376
4377 </emphasis></term>
4378 <listitem><para></para>
4379
4380 <para>
4381 Usage: tr [-cds] STRING1 [STRING2]
4382
4383
4384 </para>
4385
4386 <para>
4387 Translate, squeeze, and/or delete characters from standard input, writing
4388 to standard output.
4389
4390
4391 </para>
4392
4393 <para>
4394 Options:
4395
4396
4397 </para>
4398
4399 <para>
4400 <screen>
4401         -c      take complement of STRING1
4402         -d      delete input characters coded STRING1
4403         -s      squeeze multiple output characters of STRING2 into one character
4404 </screen>
4405
4406
4407 </para>
4408
4409 <para>
4410 Example:
4411
4412
4413 </para>
4414
4415 <para>
4416 <screen>
4417         $ echo "gdkkn vnqkc" | tr [a-y] [b-z]
4418         hello world
4419 </screen>
4420
4421
4422 </para>
4423
4424 <para>
4425 -------------------------------
4426
4427
4428 </para>
4429
4430 </listitem></varlistentry>
4431 <varlistentry><term><emphasis>true
4432
4433 </emphasis></term>
4434 <listitem><para></para>
4435
4436 <para>
4437 Returns an exit code of TRUE (0)
4438
4439
4440 </para>
4441
4442 <para>
4443 Example:
4444
4445
4446 </para>
4447
4448 <para>
4449 <screen>
4450         $ true
4451         $ echo $?
4452         0
4453 </screen>
4454
4455
4456 </para>
4457
4458 <para>
4459 -------------------------------
4460
4461
4462 </para>
4463
4464 </listitem></varlistentry>
4465 <varlistentry><term><emphasis>tty
4466
4467 </emphasis></term>
4468 <listitem><para></para>
4469
4470 <para>
4471 Usage: tty
4472
4473
4474 </para>
4475
4476 <para>
4477 Print the file name of the terminal connected to standard input.
4478
4479
4480 </para>
4481
4482 <para>
4483 Options:
4484
4485
4486 </para>
4487
4488 <para>
4489 <screen>
4490         -s      print nothing, only return an exit status
4491 </screen>
4492
4493
4494 </para>
4495
4496 <para>
4497 Example:
4498
4499
4500 </para>
4501
4502 <para>
4503 <screen>
4504         $ tty
4505         /dev/tty2
4506 </screen>
4507
4508
4509 </para>
4510
4511 <para>
4512 -------------------------------
4513
4514
4515 </para>
4516
4517 </listitem></varlistentry>
4518 <varlistentry><term><emphasis>umount
4519
4520 </emphasis></term>
4521 <listitem><para></para>
4522
4523 <para>
4524 Usage: umount [flags] filesystem|directory
4525
4526
4527 </para>
4528
4529 <para>
4530 Flags:
4531
4532
4533 </para>
4534
4535 <para>
4536 <screen>
4537                 -a:     Unmount all file systems
4538                 -r:     Try to remount devices as read-only if mount is busy
4539                 -f:     Force filesystem umount (i.e. unreachable NFS server)
4540                 -l:     Do not free loop device (if a loop device has been used)
4541 </screen>
4542
4543
4544 </para>
4545
4546 <para>
4547 Example:
4548
4549
4550 </para>
4551
4552 <para>
4553 <screen>
4554         $ umount /dev/hdc1 
4555 </screen>
4556
4557
4558 </para>
4559
4560 <para>
4561 -------------------------------
4562
4563
4564 </para>
4565
4566 </listitem></varlistentry>
4567 <varlistentry><term><emphasis>uname
4568
4569 </emphasis></term>
4570 <listitem><para></para>
4571
4572 <para>
4573 Usage: uname [OPTION]...
4574
4575
4576 </para>
4577
4578 <para>
4579 Print certain system information. With no OPTION, same as <emphasis>-s</emphasis>.
4580
4581
4582 </para>
4583
4584 <para>
4585 Options:
4586
4587
4588 </para>
4589
4590 <para>
4591 <screen>
4592         -a      print all information
4593         -m      the machine (hardware) type
4594         -n      print the machine's network node hostname
4595         -r      print the operating system release
4596         -s      print the operating system name
4597         -p      print the host processor type
4598         -v      print the operating system version
4599 </screen>
4600
4601
4602 </para>
4603
4604 <para>
4605 Example:
4606
4607
4608 </para>
4609
4610 <para>
4611 <screen>
4612         $ uname -a
4613         Linux debian 2.2.15pre13 #5 Tue Mar 14 16:03:50 MST 2000 i686 unknown
4614 </screen>
4615
4616
4617 </para>
4618
4619 <para>
4620 -------------------------------
4621
4622
4623 </para>
4624
4625 </listitem></varlistentry>
4626 <varlistentry><term><emphasis>uniq
4627
4628 </emphasis></term>
4629 <listitem><para></para>
4630
4631 <para>
4632 Usage: uniq [OPTION]... [INPUT [OUTPUT]]
4633
4634
4635 </para>
4636
4637 <para>
4638 Discard all but one of successive identical lines from INPUT (or standard
4639 input), writing to OUTPUT (or standard output).
4640
4641
4642 </para>
4643
4644 <para>
4645 Example:
4646
4647
4648 </para>
4649
4650 <para>
4651 <screen>
4652         $ echo -e "a\na\nb\nc\nc\na" | sort | uniq
4653         a
4654         b
4655         c
4656 </screen>
4657
4658
4659 </para>
4660
4661 <para>
4662 -------------------------------
4663
4664
4665 </para>
4666
4667 </listitem></varlistentry>
4668 <varlistentry><term><emphasis>update
4669
4670 </emphasis></term>
4671 <listitem><para></para>
4672
4673 <para>
4674 Usage: update [options]
4675
4676
4677 </para>
4678
4679 <para>
4680 Periodically flushes filesystem buffers.
4681
4682
4683 </para>
4684
4685 <para>
4686 Options:
4687
4688
4689 </para>
4690
4691 <para>
4692 <screen>
4693         -S      force use of sync(2) instead of flushing
4694         -s SECS call sync this often (default 30)
4695         -f SECS flush some buffers this often (default 5)
4696 </screen>
4697
4698
4699 </para>
4700
4701 <para>
4702 -------------------------------
4703
4704
4705 </para>
4706
4707 </listitem></varlistentry>
4708 <varlistentry><term><emphasis>uptime
4709
4710 </emphasis></term>
4711 <listitem><para></para>
4712
4713 <para>
4714 Usage: uptime
4715
4716
4717 </para>
4718
4719 <para>
4720 Tells how long the system has been running since boot.
4721
4722
4723 </para>
4724
4725 <para>
4726 Example:
4727
4728
4729 </para>
4730
4731 <para>
4732 <screen>
4733         $ uptime
4734           1:55pm  up  2:30, load average: 0.09, 0.04, 0.00
4735 </screen>
4736
4737
4738 </para>
4739
4740 <para>
4741 -------------------------------
4742
4743
4744 </para>
4745
4746 </listitem></varlistentry>
4747 <varlistentry><term><emphasis>usleep
4748
4749 </emphasis></term>
4750 <listitem><para></para>
4751
4752 <para>
4753 Usage: usleep N
4754
4755
4756 </para>
4757
4758 <para>
4759 Pauses for N microseconds.
4760
4761
4762 </para>
4763
4764 <para>
4765 Example:
4766
4767
4768 </para>
4769
4770 <para>
4771 <screen>
4772         $ usleep 1000000
4773         [pauses for 1 second]
4774 </screen>
4775
4776
4777 </para>
4778
4779 <para>
4780 -------------------------------
4781
4782
4783 </para>
4784
4785 </listitem></varlistentry>
4786 <varlistentry><term><emphasis>uudecode
4787
4788 </emphasis></term>
4789 <listitem><para></para>
4790
4791 <para>
4792 Usage: uudecode [OPTION] [FILE]
4793
4794
4795 </para>
4796
4797 <para>
4798 Uudecode a uuencoded file
4799
4800
4801 </para>
4802
4803 <para>
4804 Options:
4805
4806
4807 </para>
4808
4809 <para>
4810 <screen>
4811         -o FILE  direct output to FILE
4812 </screen>
4813
4814
4815 </para>
4816
4817 <para>
4818 Example:
4819
4820
4821 </para>
4822
4823 <para>
4824 <screen>
4825         $ uudecode -o busybox busybox.uu
4826         $ ls -l busybox
4827         -rwxr-xr-x   1 ams      ams        245264 Jun  7 21:35 busybox
4828 </screen>
4829
4830
4831 </para>
4832
4833 <para>
4834 -------------------------------
4835
4836
4837 </para>
4838
4839 </listitem></varlistentry>
4840 <varlistentry><term><emphasis>uuencode
4841
4842 </emphasis></term>
4843 <listitem><para></para>
4844
4845 <para>
4846 Usage: uuencode [OPTION] [INFILE] REMOTEFILE
4847
4848
4849 </para>
4850
4851 <para>
4852 Uuencode a file.
4853
4854
4855 </para>
4856
4857 <para>
4858 Options:
4859
4860
4861 </para>
4862
4863 <para>
4864 <screen>
4865         -m      use base64 encoding as of RFC1521
4866 </screen>
4867
4868
4869 </para>
4870
4871 <para>
4872 Example:
4873
4874
4875 </para>
4876
4877 <para>
4878 <screen>
4879         $ uuencode busybox busybox
4880         begin 755 busybox
4881         M?T5,1@$!`0````````````(``P`!````L+@$"#0```!0N@,``````#0`(``&amp;
4882         .....
4883         $ uudecode busybox busybox &gt; busybox.uu
4884         $
4885 </screen>
4886
4887
4888 </para>
4889
4890 <para>
4891 -------------------------------
4892
4893
4894 </para>
4895
4896 </listitem></varlistentry>
4897 <varlistentry><term><emphasis>wc
4898
4899 </emphasis></term>
4900 <listitem><para></para>
4901
4902 <para>
4903 Usage: wc [OPTION]... [FILE]...
4904
4905
4906 </para>
4907
4908 <para>
4909 Print line, word, and byte counts for each FILE, and a total line if more
4910 than one FILE is specified. With no FILE, read standard input.
4911
4912
4913 </para>
4914
4915 <para>
4916 Options:
4917
4918
4919 </para>
4920
4921 <para>
4922 <screen>
4923         -c      print the byte counts
4924         -l      print the newline counts
4925         -L      print the length of the longest line
4926         -w      print the word counts
4927 </screen>
4928
4929
4930 </para>
4931
4932 <para>
4933 Example:
4934
4935
4936 </para>
4937
4938 <para>
4939 <screen>
4940         $ wc /etc/passwd
4941              31      46    1365 /etc/passwd
4942 </screen>
4943
4944
4945 </para>
4946
4947 <para>
4948 -------------------------------
4949
4950
4951 </para>
4952
4953 </listitem></varlistentry>
4954 <varlistentry><term><emphasis>which
4955
4956 </emphasis></term>
4957 <listitem><para></para>
4958
4959 <para>
4960 Usage: which [COMMAND ...]
4961
4962
4963 </para>
4964
4965 <para>
4966 Locates a COMMAND.
4967
4968
4969 </para>
4970
4971 <para>
4972 Example:
4973
4974
4975 </para>
4976
4977 <para>
4978 <screen>
4979         $ which login
4980         /bin/login
4981 </screen>
4982
4983
4984 </para>
4985
4986 <para>
4987 -------------------------------
4988
4989
4990 </para>
4991
4992 </listitem></varlistentry>
4993 <varlistentry><term><emphasis>whoami
4994
4995 </emphasis></term>
4996 <listitem><para></para>
4997
4998 <para>
4999 Usage: whoami
5000
5001
5002 </para>
5003
5004 <para>
5005 Prints the user name associated with the current effective user id.
5006
5007
5008 </para>
5009
5010 <para>
5011 Example:
5012
5013
5014 </para>
5015
5016 <para>
5017 <screen>
5018         $ whoami
5019         andersen
5020 </screen>
5021
5022
5023 </para>
5024
5025 <para>
5026 -------------------------------
5027
5028
5029 </para>
5030
5031 </listitem></varlistentry>
5032 <varlistentry><term><emphasis>yes
5033
5034 </emphasis></term>
5035 <listitem><para></para>
5036
5037 <para>
5038 Usage: yes [OPTION]... [STRING]...
5039
5040
5041 </para>
5042
5043 <para>
5044 Repeatedly outputs a line with all specified <literal>STRING(s),</literal>
5045 or `y'.
5046
5047
5048 </para>
5049
5050 <para>
5051 -------------------------------
5052
5053
5054 </para>
5055
5056 </listitem></varlistentry>
5057 <varlistentry><term><emphasis>zcat
5058
5059 </emphasis></term>
5060 <listitem><para></para>
5061
5062 <para>
5063 This is essentially an alias for invoking ``gunzip <emphasis>-c</emphasis>'', where it decompresses the file in question and send the output to
5064 stdout. 
5065
5066
5067 </para>
5068
5069 <para>
5070 -------------------------------
5071
5072
5073 </para>
5074
5075 </listitem></varlistentry></variablelist>
5076
5077 </sect1>
5078
5079 <sect1 id="pod2docbook-ch-1-sect-6"><title>LIBC NSS
5080
5081 </title>
5082 <!-- Bogus hack to ensure that each sect has a paragraph in it -->
5083 <para>
5084 </para>
5085
5086
5087 <para>
5088 GNU Libc uses the Name Service Switch (NSS) to configure the behavior of
5089 the C library for the local environment, and to configure how it reads
5090 system data, such as passwords and group information. BusyBox has made it
5091 Policy that it will never use NSS, and will never use and libc calls that
5092 make use of NSS. This allows you to run an embedded system without the need
5093 for installing an /etc/nsswitch.conf file and without and /lib/libnss_*
5094 libraries installed.
5095
5096
5097 </para>
5098
5099 <para>
5100 If you are using a system that is using a remote LDAP server for
5101 authentication via GNU libc NSS, and you want to use BusyBox, then you will
5102 need to adjust the BusyBox source. Chances are though, that if you have
5103 enough space to install of that stuff on your system, then you probably
5104 want the full GNU utilities.
5105
5106
5107 </para>
5108
5109 </sect1>
5110
5111 <sect1 id="pod2docbook-ch-1-sect-7"><title>SEE ALSO
5112
5113 </title>
5114 <!-- Bogus hack to ensure that each sect has a paragraph in it -->
5115 <para>
5116 </para>
5117
5118
5119 <para>
5120 <literal>textutils(1),</literal> <literal>shellutils(1),</literal> etc...
5121
5122
5123 </para>
5124
5125 </sect1>
5126
5127 <sect1 id="pod2docbook-ch-1-sect-8"><title>MAINTAINER
5128
5129 </title>
5130 <!-- Bogus hack to ensure that each sect has a paragraph in it -->
5131 <para>
5132 </para>
5133
5134
5135 <para>
5136 Erik Andersen &lt;andersee@debian.org&gt; &lt;andersen@lineo.com&gt;
5137
5138
5139 </para>
5140
5141 </sect1>
5142
5143 <sect1 id="pod2docbook-ch-1-sect-9"><title>AUTHORS
5144
5145 </title>
5146 <!-- Bogus hack to ensure that each sect has a paragraph in it -->
5147 <para>
5148 </para>
5149
5150
5151 <para>
5152 The following people have contributed code to BusyBox whether they know it
5153 or not.
5154
5155
5156 </para>
5157
5158 <para>
5159 Erik Andersen &lt;andersee@debian.org&gt;
5160
5161
5162 </para>
5163
5164 <para>
5165 John Beppu &lt;beppu@lineo.com&gt;
5166
5167
5168 </para>
5169
5170 <para>
5171 Brian Candler &lt;B.Candler@pobox.com&gt;
5172
5173
5174 </para>
5175
5176 <para>
5177 Randolph Chung &lt;tausq@debian.org&gt;
5178
5179
5180 </para>
5181
5182 <para>
5183 Dave Cinege &lt;dcinege@psychosis.com&gt;       
5184
5185
5186 </para>
5187
5188 <para>
5189 Karl M. Hegbloom &lt;karlheg@debian.org&gt;
5190
5191
5192 </para>
5193
5194 <para>
5195 John Lombardo &lt;john@deltanet.com&gt; 
5196
5197
5198 </para>
5199
5200 <para>
5201 Glenn McGrath &lt;bug1@netconnect.com.au&gt;
5202
5203
5204 </para>
5205
5206 <para>
5207 Bruce Perens &lt;bruce@perens.com&gt;
5208
5209
5210 </para>
5211
5212 <para>
5213 Pavel Roskin &lt;proski@gnu.org&gt;
5214
5215
5216 </para>
5217
5218 <para>
5219 Linus Torvalds &lt;torvalds@transmeta.com&gt;
5220
5221
5222 </para>
5223
5224 <para>
5225 Charles P. Wright &lt;cpwright@villagenet.com&gt;
5226
5227
5228 </para>
5229
5230 <para>
5231 Enrique Zanardi &lt;ezanardi@ull.es&gt;
5232
5233
5234 </para>
5235
5236 </sect1>
5237
5238 </chapter>
5239
5240
5241 </book>    <!-- End of the book -->