6442b91c67697c105c0020361536505fe85f1431
[oweals/busybox.git] / docs / busybox.net / index.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> 
2
3 <HTML>
4 <HEAD>
5 <TITLE>BusyBox</TITLE>
6 </HEAD>
7
8 <body text="#000000" alink="#660000" link="#660000" bgcolor="#dee2de" vlink="#660000">
9
10 <basefont face="lucida, helvetica, arial" size="3">
11
12
13 <CENTER>
14       <TABLE BORDER=0 CELLSPACING=1 CELLPADDING=2>
15             <TR>
16                 <td bgcolor="#000000">
17                   <FONT FACE="lucida, helvetica" COLOR="#ccccc0">
18                       <B>B&nbsp;u&nbsp;s&nbsp;y&nbsp;B&nbsp;o&nbsp;x</B>
19                   </FONT>
20                 </TD>
21             </TR>
22       </TABLE>
23       <a href="/"><IMG SRC="images/busybox2.jpg" alt="BusyBox" border="0" width="360" height="230"></a><BR>
24
25
26 <!-- Begin Introduction section -->
27
28
29 <TABLE WIDTH="95%" CELLSPACING=1 CELLPADDING=4 BORDER=1>
30 <TR><TD BGCOLOR="#ccccc0" ALIGN=center>
31     <A NAME="intro"> <BIG><B>
32     The Swiss Army Knife of Embedded Linux
33     </B></BIG></A>
34 </TD></TR>
35 <TR><TD BGCOLOR="#eeeee0">
36
37 BusyBox combines tiny versions of many common UNIX utilities into a single
38 small executable. It provides minimalist replacements for most of the utilities
39 you usually find in fileutils, shellutils, findutils, textutils, grep, gzip,
40 tar, etc. BusyBox provides a fairly complete POSIX environment for any small or
41 embedded system. The utilities in BusyBox generally have fewer options than
42 their full featured GNU cousins; however, the options that are included provide
43 the expected functionality and behave very much like their GNU counterparts.
44 <p>
45 BusyBox has been written with size-optimization and limited resources in mind.
46 It is also extremely modular so you can easily include or exclude commands (or
47 features) at compile time. This makes it easy to customize your embedded
48 systems. To create a working system, just add /dev, a kernel, and a shell.
49 For a really minimal system, you can even use the busybox shell (not Bourne compatible, but very small and quite usable), and the busybox vi editor.
50 <p>
51
52 BusyBox is now maintained by 
53 <a href="http://codepoet.org/andersen/erik/erik.html">
54 Erik Andersen</a>, and its ongoing development is being sponsored by 
55 <a href="http://www.lineo.com/">Lineo</a>. 
56 <p>
57 BusyBox is licensed under the 
58 <a href="http://www.gnu.org/copyleft/gpl.html">GNU GENERAL PUBLIC LICENSE</a>
59 <p>
60
61
62 <h3> Screenshot </h3>
63
64 <p> Because everybody loves screenshots, a screenshot of BusyBox 
65 is now available <a href="screenshot.html"> right here</a>
66
67
68 <H3>Mailing List Information</h3>
69 BusyBox now has a <a href="http://opensource.lineo.com/lists/busybox/">mailing list</a>!
70 To subscribe, go and visit <a href="http://opensource.lineo.com/mailman/listinfo/busybox">this page</a>.
71
72 <!-- Begin Latest News section -->
73
74 <TR><TD BGCOLOR="#ccccc0" ALIGN=center>
75     <A NAME="news">
76     <BIG><B>
77     Latest News
78     </B></BIG>
79     </A>
80 </TD></TR>
81 <TR><TD BGCOLOR="#eeeee0">
82
83 <ul>
84
85         <li> <b>10 April 2001 - Graph of Busybox Growth </b>
86
87         <br> The illustrious Larry Doolittle has made a PostScript chart of the growth
88         of the Busybox tarball size over time. It is available for downloading /
89         viewing <a href= "busybox-growth.ps"> right here</a>.
90
91         <p> (Note that while the number of applets in Busybox has increased, you
92         can still configure Busybox to be as small as you want by selectively
93         turning off whichever applets you don't need.)
94
95     <li> <b>10 April 2001 -- BusyBox 0.51 released</b>
96     <br>
97
98              BusyBox 0.51 (the "rock-solid release") is now out there.  This
99              release adds only 2 new applets: env and vi.  The vi applet,
100              contributed by Sterling Huxley, is very functional, and is only
101              22k.  This release fixes 3 critical bugs in the 0.50 release.
102              There were 2 potential segfaults in lash (the busybox shell) in
103              the 0.50 release which are now fixed.  Another critical bug in
104              0.50 which is now fixed: syslogd from 0.50 could potentially
105              deadlock the init process and thereby break your entire system.
106              <p>
107
108              There are a number of improvements in this release as well.  For
109              one thing, the wget applet is greatly improved.  Dmitry Zakharov
110              added FTP support, and Laurence Anderson make wget fully RFC
111              compliant for HTTP 1.1.  The mechanism for including utility
112              functions in previous releases was clumsy and error prone.  Now
113              all utility functions are part of a new libbb library, which makes
114              maintaining utility functions much simpler.  And BusyBox now
115              compiles on itanium systems (thanks to the Debian itanium porters
116              for letting me use their system!).
117              <p>
118              You can read the 
119              <a href="ftp://oss.lineo.com/busybox/Changelog">changelog</a> for
120              complete details.  BusyBox 0.51 can be downloaded from 
121              <a href="ftp://oss.lineo.com/busybox">ftp://oss.lineo.com/busybox</a>.
122              <p>Have Fun!
123              <p>
124
125     <li> <b>Busybox Boot-Floppy Image</b>
126
127     <p>Because you asked for it, we have made available a <a href=
128     "ftp://opensource.lineo.com/busybox/busybox.floppy.img"> Busybox boot floppy
129     image</a>. Here's how you use it:
130
131     <ol>
132
133             <li> <a href= "ftp://opensource.lineo.com/busybox/busybox.floppy.img">
134             Download the image</a>
135
136             <li> dd it onto a floppy like so: <tt> dd if=busybox.floppy.img
137             of=/dev/fd0 ; sync </tt>
138
139             <li> Pop it in a machine and boot up.
140
141     </ol>
142
143     <p> If you want to look at the contents of the initrd image, do this:
144
145     <pre>
146             mount ./busybox.floppy.img /mnt -o loop -t msdos        
147             cp /mnt/initrd.gz /tmp                          
148             umount /mnt           
149             gunzip /tmp/initrd.gz
150             mount /tmp/initrd /mnt -o loop -t minix
151     </pre>
152
153
154     <li> <b>15 March 2001 -- BusyBox 0.50 released</b>
155     <br>
156
157              This release adds several new applets including ifconfig, route, pivot_root, stty,
158              and tftp, and also fixes tons of bugs.  Tab completion in the
159              shell is now working very well, and the shell's environment variable
160              expansion was fixed.   Tons of other things were fixed or made
161              smaller.  For a fairly complete overview, see the 
162              <a href="ftp://oss.lineo.com/busybox/Changelog">changelog</a>.
163              <p>
164              lash (the busybox shell) is still with us, fixed up a bit so it
165              now behaves itself quite nicely.  It really is quite usable as
166              long as you don't expect it to provide Bourne shell grammer.
167              Standard things like pipes, redirects, command line editing, and
168              environment variable expansion work great.  But we have found that
169              this shell, while very usable, does not provide an extensible
170              framework for adding in full Bourne shell behavior.  So the first order of
171              business as we begin working on the next BusyBox release will be to merge in the new shell
172              currently in progress at 
173              <a href="http://doolittle.faludi.com/~larry/parser.html">Larry Doolittle's website</a>.   
174              <p>
175
176
177     <li> <b>27 January 2001 -- BusyBox 0.49 released</b>
178     <br>
179
180              Several new applets, lots of bug fixes, cleanups, and many smaller 
181              things made nicer.  Several cleanups and improvements to the shell.
182              For a list of the most interesting changes 
183              you might want to look at the <a href="ftp://oss.lineo.com/busybox/Changelog">changelog</a>. 
184              <p>
185              Special thanks go out to Matt Kraai and Larry Doolittle for all their
186              work on this release, and for keeping on top of things while I've been 
187              out of town.
188              <p>
189              <em>Special Note</em><br>
190
191              BusyBox 0.49 was supposed to have replaced lash, the BusyBox
192              shell, with a new shell that understands full Bourne shell/Posix shell grammer.
193              Well, that simply didn't happen in time for this release.  A new
194              shell that will eventually replace lash is already under
195              construction.  This new shell is being developed by Larry
196              Doolittle, and could use all of our help.  Please see the work in
197              progress on <a href="http://doolittle.faludi.com/~larry/parser.html">Larry's website</a> 
198              and help out if you can.  This shell will be included in the next 
199              release of BusyBox.
200              <p>
201
202     <li> <b>13 December 2000 -- BusyBox 0.48 released</b>
203     <br>
204
205              This release fixes lots and lots of bugs.  This has had some very
206              rigorous testing, and looks very, very clean.  The usual tar
207              update of course: tar no longer breaks hardlinks, tar -xzf is
208              optionally supported, and the LRP folks will be pleased to know
209              that 'tar -X' and 'tar --exclude' are both now in.  Applets are
210              now looked up using a binary search making lash (the busybox
211              shell) much faster.  For the new debian-installer (for Debian
212              woody) a .udeb can now be generated.  
213              <p>
214              The curious can get a list of some of the more interesting changes by reading 
215              the <a href="ftp://oss.lineo.com/busybox/Changelog">changelog</a>. 
216              <p>
217              Many thanks go out to the many many people that have contributed to 
218              this release, especially Matt Kraai, Larry Doolittle, and Kent Robotti.
219              <p>
220
221
222     <li> <b>Old News</b>
223     <br>
224              For the old news, visit <a href="http://busybox.lineo.com/oldnews.html">the old news page</a>.
225 </ul>
226
227
228 <!-- Begin Download section -->
229
230 <TR><TD BGCOLOR="#ccccc0" ALIGN=center>
231     <A NAME="download"><BIG><B>
232     Download
233     </B></BIG></A>
234 </TD></TR>
235 <TR><TD BGCOLOR="#eeeee0">
236 <ul>
237
238         <li> Source for the latest release can always be downloaded from 
239         <a href="ftp://oss.lineo.com/busybox">ftp://oss.lineo.com/busybox</a>.
240
241         <li> A new snapshot of the source is made daily and is available as a GNU
242         gzipped tarball <a href="busybox.tar.gz"> right here</a>.
243
244         <li> BusyBox now has its own publically browsable
245         <a href="http://opensource.lineo.com/cgi-bin/cvsweb/busybox/">CVS tree</a>,  
246         anonymous
247         <a href="http://opensource.lineo.com/cvs_anon.html">CVS access</a>, and
248         for those that are actively contributing there is even 
249         <a href="http://opensource.lineo.com/cvs_write.html">CVS write access</a>.
250
251 </ul>
252
253
254 <!-- Begin Docs section -->
255
256 <TR><TD BGCOLOR="#ccccc0" ALIGN=center>
257     <A NAME="docs"><BIG><B>
258     Documentation
259     </B></BIG></A>
260 </TD></TR>
261 <TR><TD BGCOLOR="#eeeee0">
262 Current documentation for BusyBox includes: 
263 <ul>
264     <li> <a href="ftp://oss.lineo.com/busybox/BusyBox.html">BusyBox.html</a>.
265                 This is a list of the all the available commands in BusyBox with 
266                 complete usage information and examples of how to use each app.  I 
267                 have spent a <em>lot</em> of time updating these docs and trying to 
268                 make them fairly comprehensive.  If you find any errors (factual, 
269                 grammatical, whatever) please let me know.
270     <li> <a href="ftp://oss.lineo.com/busybox/README">README</a>.
271                 This is the README file included in the busybox source release.
272     <li> <a href="http://bugs.lineo.com/db/pa/lbusybox.html">BusyBox Bugs</a>.
273                 Need to report a bug?  Need to check if a bug has been filed?
274     <li> If you need more help, the BusyBox
275     <a href="http://opensource.lineo.com/lists/busybox/">mailing list</a> is
276     a good place to start.
277 </ul>
278
279
280 <!-- Begin Links section -->
281
282 <TR><TD BGCOLOR="#ccccc0" ALIGN=center>
283     <A NAME="links">
284     <BIG><B>
285     Important Links
286     </B></BIG>
287     </A>
288 </TD></TR>
289 <TR><TD BGCOLOR="#eeeee0">
290
291 <ul> 
292
293     <li>  <A HREF="http://perens.com/FreeSoftware/">
294     Free Software from Bruce Perens</A><br>
295     The original idea for BusyBox, and all versions up to 0.26 were written 
296     by <A HREF="mailto:bruce@perens.com">Bruce Perens</a>.  This is his BusyBox website.
297     <p>
298
299     <li>  <A HREF="http://freshmeat.net/projects/busybox/">
300     Freshmeat AppIndex record for BusyBox</A>
301     <p>
302     <li><a href="http://tinylogin.lineo.com/">TinyLogin</a>
303         is a nice embedded tool for handling authentication, changing passwords,
304         and similar tasks which nicely complements BusyBox.
305     <p>
306
307     <li><a href="http://cvs.uclinux.org/uClibc.html">uClibc</a>
308         is a C library for embedded systems.  You can actually statically link
309         a "Hello World" application under x86 that only takes 4k (as opposed to
310         200k under GNU libc).  It can do dynamic linking too and works nicely with
311         BusyBox to create very small embedded systems.
312     <p>
313
314     <li> <a href="http://opensource.lineo.com/software.html">Other cool embedded software</a>.
315     <p>
316
317     <li> <a href="http://opensource.lineo.com/">opensource.lineo.com</a>.
318     <p>
319
320     <li> <A HREF="http://www.lineo.com/">Lineo</A> is sponsoring BusyBox development.
321     <p>
322
323 </ul>
324
325
326 <!-- Begin Projects section -->
327
328 <TR><TD BGCOLOR="#ccccc0" ALIGN=center>
329     <A NAME="projects"><BIG><B>
330     Products/Projects Using BusyBox
331     </B></BIG></A>
332 </TD></TR>
333 <TR><TD BGCOLOR="#eeeee0">
334
335 <p> I know of the following products and/or projects that use BusyBox --
336 listed in the order I happen to add them to the web page:
337
338 <ul>
339     <li> <a href="http://www.lineo.com/products/embedix_linux/">Lineo Embedix Linux</a>
340     <li> <a href="http://cvs.debian.org/boot-floppies/">Debian installer (boot floppies) project</a>
341     <li> <a href="http://www.linuxrouter.org/">Linux Router Project </a>
342     <li> <a href="http://linux-embedded.org/">LEM</a>
343     <li> <a href="http://www.toms.net/rb/">tomsrtbt</a>
344     <li> <a href="http://www.stormix.com/">Stormix Installer</a>
345     <li> <a href="http://www.emacinc.com/linux2_sbc.htm">EMAC Linux 2.0 SBC</a>
346     <li> <a href="http://www.trinux.org/">Trinux</a>
347     <li> <a href="http://oddas.sourceforge.net/">ODDAS project</a>
348     <li> <a href="http://www.kerbango.com/">The Kerbango Internet Radio</a>
349     <li> <a href="http://www.linuxmagic.com/vpn/">LinuxMagic VPN Firewall</a>
350     <li> <a href="http://byld.sourceforge.net/">Build Your Linux Disk</a>
351     <li> <a href="http://homepages.ihug.co.nz/~ichi/baslinux.html">BasicLinux</a>
352     <li> <a href="http://ibiblio.org/pub/Linux/system/recovery">Zdisk</a>
353     <li> <a href="http://www.adtran.com">AdTran - VPN/firewall VPN Linux Distribution</a> 
354     <li> <a href="http://mkcdrec.ota.be/">mkCDrec - make CD-ROM recovery</a>
355     <li> <a href="http://recycle.lbl.gov/~ldoolitt/bse/">Linux on nanoEngine</a>
356     <li> <a href="http://www.zelow.no/floppyfw/"> Floppyfw</a>
357
358     <li> <a href="http://midori.transmeta.com/"> Midori Linux</a> - <a href=
359         "http://www.wired.com/news/technology/0,1282,42399,00.html"> Article on
360         Midori Linux</a> on <a href= "http://www.wired.com"> Wired</a>. Quote from
361         Erik at the top of <a href=
362         "http://www.wired.com/news/technology/0,1282,42399-2,00.html"> this
363         page</a>
364
365 </ul>
366
367 <p> Do you use BusyBox?  I'd love to know about it and I'd be happy to link to
368 you.
369
370
371
372 <!-- End of Table -->
373
374 </TD></TR>
375 </TABLE>
376
377
378
379 <!-- Footer -->
380 <HR>
381 <TABLE WIDTH="100%">
382     <TR>
383         <TD>
384             <font size="-1" face="arial, helvetica, sans-serif">
385             Mail all comments, insults, suggestions and bribes to 
386             <a href="mailto:andersen@lineo.com">Erik Andersen</a><BR>
387             The Busybox logo is copyright 1999,2000,2001, Erik Andersen.
388             </font>
389         </TD>
390
391         <TD>
392             <a href="http://www.vim.org"><img border=0 width=88 height=32
393             src="images/anim.written.in.vi.gif" 
394             alt="This site created with the vi editor"></a>
395         </TD>
396
397         <TD>
398             <a href="http://www.gimp.org/"><img border=0 width=88 height=38
399             src="images/gfx_by_gimp.gif" alt="Graphics by GIMP"></a>
400         </TD>
401
402         <TD>
403             <a href="http://www.linuxtoday.com"><img width=90 height=36
404             src="images/ltbutton2.jpg" alt="Linux Today"></a>
405         </TD>
406
407         <TD>
408             <p><a href="http://slashdot.org"><img width=90 height=36
409             src="images/sdsmall.gif" alt="Slashdot"></a>
410         </TD>
411
412         <TD>
413             <a href="http://freshmeat.net"><img width=90 height=36
414             src="images/fm.mini.jpg" alt="Freshmeat"></a>
415         </TD>
416
417     </TR>
418 </TABLE>
419
420
421 </CENTER>
422 </BODY>
423 </HTML>
424