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