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