NetBSD, FreeBSD, and 386BSD (0.1) FAQ (Part 2 of 10)

NetBSD, FreeBSD, and 386BSD (0.1) FAQ (Part 2 of 10)

Post by Gilli Gun » Thu, 17 Oct 1996 04:00:00

Dave Burgess wrote:

> Posted-By: auto-faq
> Archive-name: 386bsd-faq/part2

> Section 1. (General Network Information)
> General information

>         This section of the FAQ is about the electronic support network
>         that exists for 386bsd and its off-spring.

> 1.0     I just downloaded all of 386bsd version 0.1 and I can't get
>         [some feature] to work?  Do you have any suggestions?

>         Yes.  Get FreeBSD, OpenBSD, or NetBSD.

>         The original 386BSD software was kind of buggy when it was put
>         up for anonymous FTP in 1992.  It has been modified significantly
>         since then, and now exists in two different forms.  There are people
>         who will argue that the original 386BSD was completely unusable,
>         but that is generally an overstatement.

>         Over 100 patches were applied to the original system, with hundreds
>         more waiting in the wings.  It became just too much trouble to
>         constantly have to patch the system to get it to work.  This
>         'patched' version of 386bsd became FreeBSD.  Around the same
>         time, a second group split off from the original 386bsd tree
>         and became NetBSD.  For the primary differences, see above.

>         Getting one of these two systems will provide you with a more
>         complete system, with newer utilities, and many bugs already
>         fixed.

> 1.1     Feature summary

>         Among the many features of these systems:

>         *    Floppy disk based Installation

>         *    Hard drive partitioning for use with MS-DOS partitions

>         *    Compressed, multivolume CPIO dump format binary/source/other
>              distribution sets on MS-DOS floppies.  The cpio is based
>              on the GNU cpio, and is completely free of encumbering USL
>              software.

>         *    387 support or emulation.

>         *    SCSI support.

>         *    Most CD-ROM support.

>         *    NFS, TCP/IP and full networking.

>         *    MS-DOS file system access.

>         *    PPP and SLIP protocol support.

>         *    System upgrades through Carnegie Mellon University's 'sup'
>              utility.

>         *    Shared Library Support (in the newer version of both
>              NetBSD and FreeBSD.

>         *    Both systems are based exclusively on Berkeley's BSD 4.4
>              Lite tape, instead of the encumbered 4.3 Net2 tape.
>              Hence, both systems are free of encumbered USL code and
>              are freely redistributable.

>         *    Sound driver emulation through both Sun Microsystems' style
>              /dev/audio and the stereo /dev/sound interface.

> 1.2     *BSD software projects in progress

>         The list of software projects in progress is just too volatile
>         to go into a static document like the FAQ.

>         Folks that are interested in software projects for NetBSD
>         should contact and
>         let that mailing list know the same information.

>         Folks interested in software projects for FreeBSD should contact
>         the mailing list and talk to
>         them.

> 1.2.1   Contacting software authors

>         Whenever you are working on a port of a software package, it is
>         always a good idea to contact the original author and offer
>         whatever changes you needed to make in order to port the software.
>         That way, subsequent releases of the package may include changes
>         that allow all users of *BSD the advantage of reusing your work
>         over and over.

>         Also, once you have ported a package to *BSD, you might want to
>         contact the respective *BSD teams to let them know you've completed
>         it and where it may be located.

>         For FreeBSD, contact:

>                 <>

>         For NetBSD, contact:

>                 <>

>         If the port was a simple recompile of the source and install, a
>         note to one of the newsgroups telling the story could be considered
>         appropriate as well.

>         In keeping with that, if you find a 'bug' in NetBSD, OpenBSD,
>         or FreeBSD, or find a problem that causes you some headaches and
>         find a solution, you should contact the author of the particular
>         driver/module/program and let them know.

> 1.3     Minimum hardware configuration recommended

>         There has been considerable debate about what the REAL minimum
>         configuration for *BSD is.  Some would claim that it is the
>         smallest computer that an installation will succeed on.  Others
>         claim that it is the smallest usable computer (based on RAM and
>         speed constraints) and others would claim that it should be
>         based on using 'X'-windows.

>         The smallest installable platform is an 80386, using an MGA card,
>         with at least 2Meg of RAM and a 20 Megabyte hard disk.  While not
>         all SCSI cards (especially EISA) are supported, a great many are
>         either in the base distribution or through patches.  Thanks to
>         the new shared library code in FreeBSD and NetBSD, a 20Meg
>         installation should be easier now (in spite of the more advanced
>         functionality) than it ever was before.

>         A comfortable installation which includes source and binary
>         distributions, as well as other utilities will work in about
>         100Meg of hard drive.

>         'X' requires at least a Hercules MGA; for masochists only, from
>         what I understand.

>         See section 8 for more details.

> 1.4     Where to get the source and binaries
> 1.4.1   Where can I get the distribution on floppy or tape?

>         Many people will copy files onto diskettes or tapes if you
>         coordinate it with them ahead of time.

> 1.4.2   Where can I get the distribution via FTP?

>         If you are looking for the original 386bsd version 0.1, you are
>         pretty well out of luck.  See Section 0 for more information on
>         where to look for Web sites on information on the *BSD family.

> 1.4.3 Where can I get the distribution on CD ROM?

>         In a new joint venture, John Cargille, DiscNet, Inc., and
>         InfoMagic, Inc. are pleased to announce their joint release
>         of the BSDisc.  This collaboration should be beneficial to
>         all of our customers, since it brings to bear more experience,
>         more support capability, and economies of scale in production.

>         The BSDisc is scheduled to ship every six months or so.  The
>         current (November 1995) disk is a two CD set with the following:

>         - NetBSD 1.1
>                 - distribution sets for x86, sparc, mac68k, and amiga
>                 - expanded source tree for all architectures
>         - FreeBSD 2.1.5
>                 - distribution sets for x86
>                 - expanded source and binary trees for x86
>         - XFree86 binaries for both FreeBSD and NetBSD
>         - X11R6 (xc as well as contrib)
>         - BSD-related news archive
>         - various Answers to Frequently asked Question (FAQs)

>         The BSDisc is available both for single-issue purchases, or on
>         a buying plan.  Single-issue price is $35.00; subscription pricing
>         is $19.50 (or less) per issue, for a minimum length of 3 issues.
>         (Those prices do not include S/H.)

>         For single-issue purchases, contact InfoMagic at:

>                                                        +1-800-800-6613
>         InfoMagic, Inc.                           Tel: +1-602-526-9565
>         PO Box 30370                              Fax: +1-602-526-9573
>         Flagstaff, AZ  86003-0370         e-mail:

>         For information about subscriptions, contact DiscNet at:

>         DiscNet, Inc.                                   +1-608-846-9838
>         841 Acker Pkwy
>         DeForest, WI  53532      email:

>         European subscriptions, email:

>         I received this note from Jordan back in 1993.  It is now sorely
>         out of date, since there have been many releases of FreeBSD
>         since then.  The ordering info is still correct.

>         While I will _always_ encourage obtaining FreeBSD through "free"
>         channels (the Internet, friends, suspicious individuals in dark
>         alleys), and given that none of us will make any money from CD
>         sales, or ever have from FreeBSD in general given that WC's
>         sponsorship is confined to the loan of centralized development
>         hardware and network access, I still hope that some of you will
>         find the CD distribution medium convenient enough to order a
>         FreeBSD CD from Walnut Creek, thus indirectly supporting our
>         future development work.

>         If this marriage between commercial and free software interests
>         proves to be mututally beneficial (which still remains to be seen,
>         from Walnut Creek's point of view), it is my hope that it may serve
>         as a model for similar future endeavors.  It is an unfortunate fact
>         that developing free software at this scale costs money, even with
>         the developers donating their time and efforts, and financing some
>         of it through the sale of convenient distribution media is one of
>         the least venal ways I know of going about it.

>         This CD contains a full FreeBSD 1.0.2 source & binary release, the
>         sources and binaries for XFree86 2.0, and numerous sources from the
>         FreeBSD "ports collection".  Where space permitted, sources were
>         provided in both "packed" and "unpacked" forms for easy access both
>         as an on-line resource and as a source for compressed downloads in BBS
>         or release-construction situations.  The CD is fully ISO9660 compatable
>         and has been mastered using RockRidge extensions for long filenames on
>         systems that support it (like FreeBSD! :-).

>         It is, of course, possible to install the system off the CD from
>         scratch, given some basic willingness to read a little documentation
>         and a few blank floppy disks.  [ Ed Note.  You would be surprised the
>         number of people that do not see this paragraph...DBB]

>         For the sake of convenience, I append the ordering information
>         distilled from FreeBSD's /usr/src/RELNOTES.FreeBSD below.

>         Ordering information:

>         Walnut Creek CDROM
>         4041 Pike Lane, Suite D
>         Concord CA  94520
>         1-800-786-9907, +1-510-674-0783, +1-510-674-0821 (fax)

>         Or via the internet from  A current catalog can
>         be obtained via ftp from

>         They accept Visa, Mastercard, American Express, and ship COD
>         within the United States.  California residents please
>         add 8.25% sales tax.

> (Roman Yanovsky sent in this
>         note.  I have editted it down some, but left in the bulk of the
>         stuff in case you need more information:

>         Subject: Linux Slackware and FreeBSD CD-ROM with X-windows etc.

>         Trans-Ameritech presents "The best Linux plus FreeBSD CDROM ever"

>         [ Linux stuff deleted ]

>         * For hacker's reference an uncompressed FreeBSD source tree is
>         provided.

>         * On the BSD side there is a full source and binary distribution
>         of the "final" FreeBSD 1.0

>         * If you have questions or problems Trans-Ameritech provides free
>         support via e-mail within 24 hours.

>         * We ship the same day as we get the order.

>         The new CDROM is available for $30 plus shipping/handling. If you
>         are a current customer, it is only $20.  New releases will be
>         available every 3 month. Subscription is available.

>                 Trans-Ameritech Enterprises, Inc.
>                 2342A Walsh Ave.
>                 Santa Clara, CA 95051

>                 Tel. 408/727-3883
>                 FAX: 408/727-3882

>         This information is offered with no warranties, guarantees,
>         franchise offers, or recommendations.

> 1.5     Electronic Information Groups for *BSD

> 1.5.1   Usenet newsgroups

>         General BSD questions can be posted to comp.unix.bsd.  Bear
>         in mind, however; that your questions to this group should
>         really be about BSD in general, not a specific implementation
>         detail of *BSD.

>         Newsgroup for discussion of general BSD questions:
>                 comp.unix.bsd.misc

>         Newsgroups for the discussion of the Bill and Lynne Jolitz
>         version of 386BSD:
>                 comp.unix.bsd.386bsd.announce
>                 comp.unix.bsd.386bsd.misc

>         Newsgroups for the discussion of the FreeBSD version of BSD 4.4
>         Lite:
>                 comp.unix.bsd.freebsd.announce
>                 comp.unix.bsd.freebsd.misc

>         Newsgroups for the discussion of the NetBSD version of BSD 4.4
>         Lite:
>                 comp.unix.bsd.netbsd.announce
>                 comp.unix.bsd.netbsd.misc

>         Newsgroups for the discussion of the commercial version of the
>         BSD 4.4 Lite system:
>                 comp.unix.bsd.bsdi.announce
>                 comp.unix.bsd.bsdi.misc

> 1.5.2   Newsgroup archives.

>         These sites maintain a historical record of the traffic in the Usenet
>         Newsgroups indicated.  There are others, but I haven't gotten their
>         names yet.

> Host Name            IP address     Location        Newsgroups archived
> -------------------- -------------- --------------  ----------------
>  Australia       comp.unix.bsd,
>                                                     comp.os.386bsd.*

>    London, UK      comp.os.386bsd.*

> 1.5.3   *BSD system mailing lists.

>         With the elimination of the old 386bsd mailing lists, the only
>         mailing lists that are still available are the ones for FreeBSD
>         and NetBSD.  Information about the NetBSD lists and how to use
>         majordomo (the list handler) is available by mailing to

>         There are four mailing lists for FreeBSD and they are:

>         FreeBSD-hackers:        for hackers
>         FreeBSD-questions:      misc questions
>         FreeBSD-bugs:           bug reports
>         FreeBSD-current:        discussion of -current (in development)

>         Send to to be added
>         to the hackers list, and *-questions-request@freefall... to be
>         added to the questions list.

>         For information about the NetBSD mailing lists, see the NetBSD
>         Mailing List FAQ that is posted regularly by Chris Demetriou in
>         comp.os.386bsd.announce.

> 1.5.4   System Updates.

>         There are at least two different ways of getting the updates
>         for the current source tree for both FreeBSD and NetBSD.  The
>         first is the traditional FTP method, and the other is using a
>         utility called 'sup'.  This program keeps a log of the source
>         modules that have been updated and sends out only those files
>         that have been changed.  Included below are some sample
>         instructions from John Brezak <> on how to
>         run sup for NetBSD.  The sup procedures for FreeBSD are similar
>         and are available via ftp from in the
>         ~/ftp/pub/sup directory.  This directory contains the sup
>         program, a man page, a sample sup-file and full instructions
>         for maintaining your sources via 'sup.

>         Instructions for installing NetBSD sources and releases using SUP
>         -----------------------------------------------------------------
>                                         1.3 1993/11/3

>         SUP is a network installation package written by CMU used to
>         distribute software. For more details on SUP refer to the man
>         pages.

>         Sup works by reading a configuration file (supfile) and using
>         this information to determine what "collections" of files will
>         be loaded from the collection repository.  Here is an example
>         of a supfile to load the NetBSD current release.

>         [ Notes: lines have been broken for readability; do NOT use '\'
>         in supfiles and the information here is an EXAMPLE.  This ain't
>         a cooking school, folks.  Also, the information in these lines
>         has changed for each of the distributions.  Read the
>         documentation that comes with your software carefully for the
>         lastest information. ]

>         src release=current hostbase=/b/anon_ftp
>                 base=/usr prefix=/usr backup

>         ksrc release=current hostbase=/b/anon_ftp
>                 base=/usr prefix=/usr backup

>         security release=current
>                 hostbase=/b/anon_ftp base=/usr prefix=/usr backup

>         gamessrc release=current
>                 hostbase=/b/anon_ftp base=/usr prefix=/usr backup

>         regress release=current
>                 hostbase=/b/anon_ftp base=/usr prefix=/usr backup

>         #othersrc release=current
>                 hostbase=/b/anon_ftp base=/usr prefix=/usr backup

>         This supfile will load the "current" collections for "src",
>         "ksrc", "security", "gamessrc", and "regress" in the /usr
>         directory on the local machine.  The "othersrc" collection will
>         not be loaded because it is commented out.

>         The supfile line is made up of keywords that describe the
>         collection's location on the sup server and where and how it
>         will be loaded on the local host.

>                 release - the release of the collection to load.
>                 host    - the 'host' where the SUP repository resides.
>                         NetBSD uses .
>                 hostbase- the pathname on the host to the base of the
>                         collection.  The hostbase for NetBSD is "/b/anon_ftp".
>                 base    - where you want to install it locally.
>                 prefix  - used to locate the "sup" directory to write sup's
>                         info about updates. Usually the same as base.

>         This supfile can also set some options. The "old" option tells sup
>         to check all files for changes, not just those that are newer than
>         the last sup update. Normally sup will overwrite local files with the
>         changed file from the repository. If the sup collection specifies
>         that an existing file should be renamed to a backup, the "backup"
>         option in the supfile activates this. The "delete" option tells
>         sup to delete any files locally that are no longer in the
>         collection - be careful with this one.  The "keep" option will
>         cause sup to NOT update files that have been changes locally.
>         The "compress" option will use gzip to compress the files before
>         transfer and gunzip them on the receiving end. This option can be
>         used to cut down on the number of transmitted bytes.

>         You may want to set 'base' and 'prefix' to something other than /usr
>         if you want to preserve your existing src tree.

>         The sup repository on currently offers these
>         collections.

>                 src, ksrc, security
>                         The sources for NetBSD

>                 othersrc
>                         The current sources for contributed parts of
>                         NetBSD.  This contains the sources for sup.

>                 regress
>                         The current sources for the NetBSD regression test
>                         suite.

>         If you only want the kernel sources for a specific port there are
>         some sub packages that you can use instead of the "ksrc" one. If
>         you are using the sub packages, be sure to also sup the
>         "ksrc-common" package.

>                 ksrc-common
>                         Kernel sources common to all ports.

>                 ksrc-1, ksrc-sparc, ksrc-hp300, ksrc-amiga, ksrc-mac,
>                 ksrc-pc532, ksrc-pmax, ksrc-sun3
>                         Kernel sources for a particular port.

>         The security package is not to be sup'ed by sites outside of the
>         U. S., read the "README.export-control" file for details.

>         Each collection can have multiple releases (as specified by the
>         "release" keyword).

>         IMPORTANT!!
>         Be aware that the current release is simply a snapshot of the
>         daily state of NetBSD development and is not guaranteed to
>         build (or even work) - use at your own risk !

>         Stable releases of NetBSD are available via SUP.  Instructions
>         are included with the release announcement.

>         Before running sup, be sure that your /etc/services contains
>         these entries.

>         supfilesrv      871/tcp         # for SUP
>         supfiledbg      1127/tcp

>         To try sup without really updating anything use the '-f' flag.
>         The '-v' flag means verbose and can be used to see what sup is
>         doing.

>                 sup -fv supfile

>         The sup binary, sup man page and sample supfiles can be ftp'ed
>         from .  Comments should be
>         directed to "".

>         A mailing list exists for users of the NetBSD "current"
>         release.  To join, mail to ''
>         with a mail body of "info".  The reply will describe the mailing
>         lists for NetBSD.  The you will want to subscribe to the
>         "current-users" mailing list.  We will use this list to announce
>         any special changes made to the "current" tree.

> 1.6     Documentation available

>         There are two types of documentation for *BSD.  First is the
>         set that covers the operation and theory used in BSD-Unix.

> 1.6.1   BSD manuals

>         The full set of BSD documentation is available via anonymous FTP
>         from in /pub/Library/Computer/doc4.3.  To print
>         this documentation on *BSD systems, replace the ditroff
>         references in the Makefile with 'groff -e -t -msU {SRC} >'
>         to generate PostScript format files.  Use different options to
>         make the output conform to other print styles.

>         The etc distribution also comes with a documentation directory
>         /usr/share/doc which has nearly 3Meg of documentation about *BSD.

>         In addition, on-line manuals are available in the binary
>         distribution set.  It contains specific information on the use
>         of UNIX utilities and commands.  Type "man man" for information
>         on the online manual.

> 1.6.2   BSD books

>         For learning how to work in the Unix environment, the standard text
>         is "The Unix Programming Environment,"  by Kernighan and Pike.

>         For Unix Administration, the best is "Unix System Administration
>         Handbook," by Nemeth, Snyder and Seebass.

>         For systems level programming (i.e., systems calls), I recommend
>         "Advanced Unix Programming," by Marc Rochkind.  Unfortunately it is
>         out-dated and oriented towards System V.

>         A new book "Advanced Programming in the Unix Environment," by W.
>         Richard Stevens is very up-to-date, and an excellent reference,
>         especially for dealing with POSIX standards issues.

>         For network programming, "Unix Network Programming," by W. Richard
>         Stevens is highly regarded.

>         The 4.3BSD Unix Manuals contain loads of invaluable tutorials and
>         historical papers in addition to hard copies of on-line documentation.
>         The six volume set is available from Usenix for $60.00 (email:

>         The 4.4 BSD Unix Manuals are the authoritative source for
>         information about the 4.4 BSD release, and by inference the
>         NetBSD and FreeBSD systems.  They are available from O'Reilly
>         and Associates (the Nutshell series people).  In addition the
>         the six volume set, there is a CD included (at a price) of the
>         entire 4.4 release.  Combine this with the NetBSD 1.0 or FreeBSD
>         2.0 systems, and you should have a commercial quality operating
>         system available in no time.

>         I recommend you look at "The AWK Programming Language," by
>         Aho, Weinberger and Kernighan.  This is a very nice prototyping
>         language - powerful and easy to use.

>         Another excellent reference book for *BSD is "The Design and
>         Implementation of the 4.3BSD UNIX Operating system" by  Samuel J.
>         Leffler, Marshall Kirk McKusick, Michael J. Karels, John S.
>         Quarterman, 1989, Addison-Wesley, ISBN 0-201-06196-1.  While this
>         book is out of date in many sections, it is purported to be an
>         excellent source of historical information, if nothing else.
>         Chris Demetriou recommends the sections on the treatment of
>         file systems, caching and the networking layer.  The sections in
>         this books which do not apply to *BSD include the VM section,
>         bootstrapping, and autoconfig.

>         Here is a list from Hellmuth Michaelis (duplicative as it may seem
>         to have all of these lists) for more information on *BSD:

>         ----------------------------

>         Bell Telephone Laboratories, Inc. "UNIX Programmer's Manual, Seventh
>                 Edition, Volume 2". Revised and Expanded Version.
>                 Holt, Rinehart and Winston 1983

>         George Pajari, "Writing Unix Device Drivers"
>                 Addison Wesley 1992

>         Janet I. Egan and Thomas J. Teixeira, "Writing a UNIX Device Driver"
>                 John Wiley & Sons 1989, especially the 30 page appendix
>                 handling the unique features of the BSD system.

>         Janet I. Egan and Thomas J. Teixeira, "Writing a UNIX Device Driver"
>                 Second Edition. John Wiley &*BSD1992

>         Leffler, McKusick, Karels, Quarterman, "The Design and Implementation
>                 of the 4.3BSD UNIX Operating System"
>                 Addison Wesley 1988, corrected Reprint 1989

>         Leffler, McKusick, "The Design and Implementation of the 4.3BSD UNIX
>                 Operating System, Answer Book"
>                 Addison Wesley 1991

>         Maurice J. Bach, "The Design of the UNIX Operating System"
>                 Prentice-Hall 1986

>         Sun Microsystems Inc., "Writing Device Drivers"
>                 Part No. 800-3851-10, Revision A of 27 March 1990

>         Hewlett-Packard Company, "HP-UX Driver Development Guide",
>                 Part No. 98577-90013, First Edition 07/91

>         W. Richard Stevens, "Advanced Programming in the UNIX Environment",
>                 Addison Wesley 1992

>         Phillip M. Adams, Clovis L. Tondo, "Writing Unix Device Drivers in C",
>                 Prentice Hall 1993

>         Peter Kettle, Steve Statler, "Writing Device Drivers for SCO UNIX,
>                 A Practical Approach", Addison Wesley 1993

>         In addition, there are many other books which, for one reason or
>         another, have not made it into this briefuu

yeah right!