[Comp.Sci.Dept, Utrecht] Note from archiver<at>cs.uu.nl: This page is part of a big collection of Usenet postings, archived here for your convenience. For matters concerning the content of this page, please contact its author(s); use the source, if all else fails. For matters concerning the archive as a whole, please refer to the archive description or contact the archiver.

Subject: [comp.unix.bsd] NetBSD, FreeBSD, and OpenBSD FAQ (Part 1 of 10)

This article was archived around: 13 Oct 1997 02:00:05 -0500

All FAQs in Directory: 386bsd-faq
All FAQs posted in: comp.unix.bsd.netbsd.announce, comp.unix.bsd.freebsd.announce, comp.unix.openbsd.announce
Source: Usenet Version

Posted-By: auto-faq Archive-name: 386bsd-faq/part1
<pre> Frequently Asked Questions 386BSD, NetBSD, FreeBSD, OpenBSD and other BSD derived Operating Systems. EXTREMELY UNOFFICIAL Original FAQ by: Terry Lambert New New FAQ by: Dave Burgess burgess@cynjut.neonramp.com Last Update: 26 Jun 1997 </pre> Section -1. (Where else to look) In the distribution of each of the *BSD systems, there is a LOT of documentation. If you are completely unfamiliar with Unix, there is a reading list recommended in Section 1 of the FAQ. There are also various documents in the /usr/share/doc directory on the installed system. Many of these give detailed information about the design, history, and use of many of the pieces of the *BSD system you are interested. Once you are familiar with Unix-like systems, you can probably graduate to the 'man' program. The 'man' program is a series of manual pages which describe various parts of the system (kernel stuff, file formats, commands, 'C' standard functions, etc.) in enough detail to generally get you where you want to be. The command 'man man' will give you a lot of details. The other command which might help is called 'apropos' (pronounced ap'-rO-pO). This command searches the title lines of every manual page looking for a match in the word you include as an argument. If you have the system running, try the command 'apropos ttys' to get a feel for all the stuff that's out there. Section 0. (Basic FAQ information) 0.0 Master Index. 0.0 Master Index. 0.1 A brief history of the *BSD family. 0.1.1 How close is NetBSD (or FreeBSD) to BSD 4.4? 0.1.3 Where can I get more information about the *BSD family of Operating Systems? 0.2 About this FAQ. 0.2.1 I want to start up a thread about why *BSD is or isn't as good as some other operating system. Can anyone suggest a good reason why I shouldn't? 0.3 Are there any resources on the Net (like URLs) associated with the BSD family of operating systems? 0.4 How to add your pet answer to the FAQ. 0.5 Administrivia. 0.6 Does anyone reading this have any sense of humor at all? 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? 1.1 Minimum hardware configuration recommended 1.4 Where to get the source and binaries 1.4.1 Where can I get the distribution on CD ROM? 1.5.3 *BSD system mailing lists. 1.5.4 System Updates. 1.6 Documentation available 1.6.1 BSD manuals 1.6.2 BSD books 1.6.6 The O'Reilly and Associates BSD 4.4 Set. 1.6.7 Other FAQ's on the net that are relevant 1.7.1 Official distribution sites 2.0 Install process 2.0.1 Boot disks (versions and media formats) I have the base system installed, and now I want to install the rest of the system. Where did the 'extract' program go? The floppy booted, but now the hard disk won't boot? I am trying to reinstall. I run install and it loops asking me if I want to use the whole disk? What are the options on the boot prompt? I just used the '-s' option on the boot, but I can't write anything onto the disk. What is wrong? If I use a plain 'mount' command it tells me that my root file system is read-only. 2.1 Binary distribution 2.1.1 I want to install by NFS but I am having all kinds of problems connecting to the Sun server where the files are. 2.2 Configuration 2.2.1 Partitions What is a 'disklabel' and why do I need one? What other kinds of information do I need if I really want to tune my hard drive's performance in conjunction with a newfs? 2.2.2 Common Disk Label Problems. Increasing the *BSD partition size. I can access the DOS partition on my second disk from Unix but not DOS? Any suggestions? I want to use my entire 2 Gig drive as the root partition. Why doesn't it work? 2.5.3 How do I set up the system so that I can boot from more than one operating system/file-loader without using floppies? 2.2.3 How do I get the system to boot from the second hard drive? 2.2.4 How do I disklabel my second hard drive? 2.2.5 NetBSD and FreeBSD cannot handle disk geometry translations, but it turns out that my disk geometry is translated. It has five zones, each with a different sec/track! What kind of things can I do about the disk translation my hard disk controller uses? 2.2.6 I am having trouble installing on the EIDE hard drive. What are some of the things that I need to look into? 2.2.7 My disk label is complaining about '256 heads' in the disklabel. This is obviously bogus, but it doesn't seem to be hurting anything. Is it Okay or should I fix it? 2.2.8 What are the options for the boot up prompt? 2.2.9 I am having trouble installing WRT 'syslogd: bind: Can't assign requested address' errors. What are some of the things I should look at? I also am having trouble with the network: 'starting network ... ifconfig: localhost: badvalue'. 2.2.10 When I start up my system, it hangs for three or four minutes during the 'netstart' program. Our network nameserver is working OK, and I use it all the time; my resolv.conf file says to use the network nameserver. Why would netstart have such problems using it? 2.2.11 I am having trouble getting net aliases to work. What could some of the problems be? 2.2.12 I'm having trouble with the networking code (specifically the PPP stuff to my ISP). How can I debug NetBSD's networking? 2.2.13 I want to hard wire my SCSI devices to a particular device number. Is that possible? 2.3 Common installation problems. 2.3.2 Endless reboot cycles. 2.4 The computer just sits there, or 'that isn't right'. 2.4.1 The boot disk works all right on one computer but not another. 2.4.2 Really strange errors in the various *BSD flavors. Using the new code in NetBSD, I get a "panic: pdti 206067" in pmap_enter(). What should I do? 2.4.3a I get the error "isr 15 and error: isr 17" on an NE2000 card. 2.4.3b I have some card on IRQ2 and it doesn't work; why? 2.4.3c I am getting lousy performance out of my network card. What are some of the other possibilities? 2.4.4 What is the difference between IRQ2 and IRQ9? Are they really the same, or are they really different? 2.4.5 Some of my SCSI devices (like a tape drive) don't work; why? 2.4.6 I want to use the Adaptec 1542C SCSI controller. What are the problems/tricks you need to know to get it working? 2.4.7 Is there a SCSI utility which works to fix up the random problems I sometimes have with my drives? 2.4.8 My system boots OK off the floppy, but once I try to boot from the hard drive, the message "changing root device to sd0a" appears and the system hangs. What is the most likely thing that I have done wrong? 2.5 Other common problems that are attributed to the installation process but are caused other places. 2.5.1 I want to use more than 16 Megabytes of memory. Will any of the BSD based systems support it? 2.5.2 I tried to use a device in my computer that should be there. When I did, I got a "Device not configured error." What do I do now? 2.6 Customizing the system to meet my needs. 2.6.1 How do I get the system to not display the machine name, but display our company name? 2.6.2 I have a program that, under normal circumstances, starts once a second. This regularly causes inetd to terminate the program with a 'server failing (looping), service terminated' error. How do I fix this? 3.0 System Internals 3.1 Kernel 3.1.1 How do I build a kernel? Why does the kernel code for NetBSD still use the old K&R style declarations when the ANSI declarations are SO much better? How do I port NetBSD to another platform? 3.1.2 I want to do one of the following things: * add a device not in the distributed kernel (third com port, additional disk or tape, line printer driver, etc). * use a patch from the net or the patchkit to fix a kernel bug. * add another swap device. * recompile the kernel to remove extraneous devices so that it takes up less space. * configure more pseudo-terminals to allow for more xterms or network logins. 3.1.3 I want to build and profile a kernel. What do I need to do? 3.1.4 Now that I have a kernel, how do I install it? 3.1.5 My system is complaining about stray interrupt 7. Is my machine going to explode or anything? 3.1.6 I keep getting "wd0c: extra interrupt". What does it mean? 3.1.7 I keep getting silo overflow messages, but the system doesn't seem to mind. Is there a problem? 3.1.8 I found a bug in the kernel. How do I report it? 3.2 What exactly is this config file, anyway? What are all of these cryptic notations? 3.2.1 Okay, fine. Why shouldn't I just add every device I can find to the kernel, so I'll never have to recompile this again? 3.2.2 What should I remove from the kernel? 3.2.3 I can't get enough remote login sessions or xterm sessions. I also can only get four sessions working at a time. What can I do? 3.2.4 How do I get ddb, the kernel debugger, compiled into the kernel and running? 3.2.5 I'm getting all kinds of errors when I try to build a new version of GCC. How can I upgrade GCC to the most current version? 3.2.6 Can I patch the current running OS image? 3.2.7 Can I have more than one config file? Should I rename it to something else? Any other hints? 3.2.8 I have been getting a lot of "virtual memory exhausted" errors when I am compiling a program with a really big static array. I have 128Meg of memory and 8Gig of swap. How can this be happening? I am running NetBSD and really DO have 128 Meg of memory; but the generic kernel only sees the first 64Meg. How can I fix this? How do I dedicate 16Meg of memory to nothing but disk buffers? 3.2.9 Where can I learn more about all this? 3.3 Other kernel related kind of questions. 3.3.1 Has the method for system call changed in NetBSD? 3.3.2 Does anyone have a system building script that takes things like building a new config and multiple config files into account? 3.3.3 How do I upgrade from my release version of NetBSD (and probably FreeBSD) to the '-current' development sources? 3.3.4 Is there a Makefile that does all that happy world-building stuff? 3.3.5 Can NetBSD do cross compilation? 3.3.6 My network memory seems to be leaking. The numbers just keep increasing slowly over time. Is there a problem I need to worry about? 3.4 X11/XFree86/XS3 3.4.1 What options should I define to get the X extensions included? 3.4.2 Where can I get the FAQ for 'X'? 3.4.3 Why does X drop characters when using xdm? When I run xdm from the console, it keeps losing keystrokes and the shift keys don't always work. Why? 3.4.4 What can I do to figure out why 'X' doesn't work with NetBSD? 3.4.5 Under NetBSD and FreeBSD, xlock (or any other program that uses passwords) fails to validate user passwords. Anyone know why? 3.5 I want to run 'XYZA' which is dynamically linked and from 'some other operating system'. What special things do I have to do to get it working? 3.6 You promised to talk about timezones below. Are you going to? 3.6.1 How do you change the timezone on NetBSD (FreeBSD also?)? 3.6.2 The translation between seconds-since-the-epoch and date differs by about 18 seconds between BSD and other Unixes when running ntp; why? 3.7 How can I implement CVS to track MY changes to the kernel source tree, yet still follow the -current development tree? 3.8 Optional Op-codes for NetBSD, FreeBSD, and other systems. 4.0 Introduction 4.1 Common (sort of) Kernel-related problems 4.1.1 Sometimes I have trouble with my system resetting the terminal to seven bit mode. Isn't BSD eight bit clean? 4.1.2 How do you implement quotas on Net/2 derived BSD systems? 4.1.3 What are the correct permissions for the /tmp, /usr/tmp, and /var/tmp directories? 4.2 Available kernel add-ons 4.2.1 Loadable Kernel Modules 4.3 Other program building type problems. 4.3.1 I am building a program that requires access to the crypt library. Either I have it and it isn't getting copied into the executable, or I don't have it; why? 4.3.2 I am having trouble with long file names in my libraries. It seems like there is a 16 character limit in the library somewhere. 4.3.3 I'm getting annoyed with having this "conflicting types for `sys_errlist'" problem show up nearly every time I build a program. What do I need to do? 4.4 System Administration Questions 4.4.1 Where can I get good books about NetBSD or FreeBSD? 4.4.2 I am concerned about system security. What should I do to protect my system from net attacks? 4.4.3 How can I log failed login attempts? 4.4.4 Can I use a Concatenated Filesystem with NetBSD? Why, when I type "ccdconfig ccd0 16 none /dev/wd0a > /dev/wd1a", do I get back "ccdconfig: ioctl (CCDIOCSET): /dev/ccd0d: Device not configured"? 4.4.5 I am really new to Unix System Administration. I need some real basic help. What is the System Administrator's user name? I can't log in as 'su'. What does that message mean when I log in as root. Are there any books I can 'bootstrap' myself with? How about some code examples? 4.5.6 How do I change the default shell for a user? 4.5 Daemon questions 4.5.1 I'd like to use amd to mount a file system (/dev/sd0f aka /usr/local) on another machine as "/usr/local". What's the magic? 4.5.2 I am having trouble with my nameserver refusing to accept 'nslookup's from my SunOS machine after I installed the resolver fix. The exact error message is "*** Can't find server name for address Query refused". Can you help? 4.5.3 Are there any alternatives to 'NIS' available for NetBSD, et al.? 4.6 Adding new and removing old users. 4.6.1 Where can I FTP the 'adduser' program? 4.6.2 Where can I get a 'rmuser' script? 5.0 Introduction 5.1 A replacement curses program/library. 5.2 Floppy Disk problems. 5.2.1 How do I get a bootable floppy? 5.2.2 How do I maximize the space on a mountable floppy disk. 5.3 Character Device Driver info 5.3.1 Printers 5.3.2 Terminals/Keyboards 5.3.3 Modems/FAX Modems How do I add a modem to *BSD: Adding a Dial-in/Dial-out FAX to NetBSD or FreeBSD. 5.3.4 What is the trick for getting Kermit to work with rz and sz? 5.4 Tape Drives 5.4.1 Does the tape need to be formatted? 5.4.2 If I execute the command 'st -f /dev/st0 status', I get: Archive/Tandberg? tape drive, residual=0, blocksize=512 Density: high = 16 (0x10), medium = 15 (0xf), low = 5 (0x5) ds=0 er=0 5.4.3 When is erst0 used? 5.4.4 How is density (bpi) computed? I am using 3M DC 6250 cassettes which have a 250MB capacity on the Viper 150. But computing the bits/inch based on 250MB/tape-length (1020 ft.), I get a density of 171335 bpi, which is nowhere near the 10000 bpi associated with QIC-150 in the st(1) man page. Why the discrepancy? 5.4.5 How is an appropriate block size determined (and in what units are they specified in the st(1) command)? 5.4.6 From the 4.3BSD mtio(4) man page, it sounds like data is typically (traditionally?) stored on tape in eof-terminated sequences of 1K records. Is st's notion of "file" the record sequence between two eof marks? What about a "record"? Is a "record" one "block", as determined by st's "blocksize" command? If not, what is the connection between them? Can I change the "record" size? When would I want a block size that is different from the default? 1KB is the size of writes used by dd or whatever. QIC specifies 512 byte records (well at least its what people use..) Whatever you write in will be broken into 512 byte sections. They must be multiples of 512 though. How do I write several archives to a single tape? I tried without success: $ st -f /dev/rst4 rewind $ tar cf /dev/nst4 archive1 $ st -f /dev/nrst4 weof $ tar cf /dev/nst4 archive2 $ st -f /dev/nrst4 weof Later, I would expect to be able to access, say, archive3 via the fsf directive to skip over the first two archives. What is the correct sequence? 5.4.8 Since the Viper 150 writes on QIC-150/120, I guess I don't need to worry about writing variable-length records? How about reading a tape written with variable-length records. Is this possible with the Viper? If so, what's involved? 5.4.9 The very scant documentation that came with my drive mentions a "selectable buffer disconnect size," whose default is 16K. This is evidently the "maximum number of bytes that can be sent over the SCSI bus during a single data transfer phase." What's that? How is it connected st's "blocksize" command? Do I want to use 16K blocks, or might I even want to set the disconnect size to a higher value? 5.4.10 What is "streaming"? When I tar a directory of files to tape, I notice that the tape often stops. Streaming means it doesn't stop? How would I get the viper 150 to stream using tar or cpio or dump? 5.4.13 My tape drive doesn't work. 5.4.14 I am trying to restore a tape from a FreeBSD machine on a Sun. What kinds of problems should I expect? 5.4.15 What are the jumper settings for the Archive Viper tape drive? 5.4.16 My Viper-150 auto-detects fine; however, the first attempt to read a tape fails after a boot due to an "illegal SCSI command". What could be the problem? 5.4.17 Why haven't we changed the defaults in rdump and rrestore to something that makes sense? I was trying to dump a filesystem to a remote tape and ran into an error complaining about being unable to execute /etc/rmt. 5.5 Network Stuff 5.5.1 How can I get my system to work as a network router? 5.5.2 I recently had a problem where I got a message that said "panic: kmem_malloc: mb_map too small". What is the solution to this problem? 5.5.3 Does anyone have an example of a working gated.conf file? I can't figure these instructions out at all. 5.5.4 How do I set up Multicasting on my system? 5.6 I want to use my ZIP drive. Are there any weird things I need to know? 6.0 Working with DOS and BNR/2 related software. 6.1 Formatting a floppy 6.2 Sharing the Disk with MS-DOS 6.2.1 How can I partition my drive to support both MS-DOS and *bsd? 6.2.2 I can install using the whole disk, but I can't install when I try to share the drive between *BSD and MS-DOS. Why? 6.2.4 Is there any hope of ever running MS-DOS applications under any of the free BSD systems? 6.2.5 How do I get Linux executables to run under NetBSD? 6.3 Accessing the MS-DOS filesystem 6.4 NFS/PC-NFS support 6.4.1 Can I use 8K packets for NFS? When I try, I have all kinds of problems. Specifically, I get 'ring buffer overflows' or the performance is real bad. 6.4.2 How do I get around the NFS "Permission denied" error? 6.4.3 What does the message "BAD MNT RPC: RPC Authentication error; why = Invalid client credential" mean when I try to mount something from another machine? 6.4.4 What does the message "Bad MNT RPC: RPC: Authentication error; why = Client credential too weak" mean when I try to mount something from another machine? 6.4.5 I get a lot of 'ring buffer overflow' messages using NFS and the ed0 driver. Is there a problem? 6.4.6 I am getting really poor performance out of my network, especially when talking to older networks or when performing short file transfers. What's the problem? 6.4.7 Is there any PC software that will allow me to use my enormous PC with all of the unsupported hardware as a PC-NFS server? 6.5 How can I use mtools with the 'new' floppy naming convention? 7.0 Communications 7.1 SLIP/CSLIP 7.2 PPP 7.2.1 I have a problem with my PPP connection. From time to time, the connection will just 'pause'. If I do something in another window which polls some other external machine, the connection will 'unpause' for a while. 7.3 TCP/IP 7.3.1 Where can I obtain *BSD source code to add IP Security per the IETF RFCs (RFC-1825 through RFC-1829) to my system ? 7.4 UUCP 7.4.1 TIP/CU 7.4.2 What is the magic incantation that allows the modem to dial? 7.4.3 My modem on DOS COM3 or DOS COM4 works with DOS, but not with *BSD. It is set up using IRQ 4 (or 3) respectively. 7.5 How do I configure my nameserver? 7.6 Terminals 7.7 My network manager (or UUCP feed site admin) just informed me that the way I have installed sendmail through my UUCP connection and has caused a sendmail loop. Can you help me get sendmail installed correctly? 7.8 Can network attached assets be used by/from NetBSD? FreeBSD? OpenBSD? 7.8.1 Is it possible to Network boot a NetBSD machine from a network on a diskless Sparc? 7.8.2 I have been working with FreeBSD 1.5.1 with some machines configured as diskless. How can I do the same for 2.0R (i.e., Which are the magic words to put in the Kernel configuration file?) 7.8.3 How can I get ISDN to work? 8.0 What hardware works! 8.3.1 How do I configure multiport cards? Is there a possibility of using multiport serial boards? How do you configure an AST/4 in the kernel? It looks like the AST driver only supports 4-port cards, but it looks like it would be easy to add support for 8 ports ... or am I wrong? 8.3.3 What is the difference between baud and bits per second? 8.4 Disk Controller Problems 8.4.2 SCSI controller problems 8.5 SCSI Controllers 8.6 Network Cards 8.7 Printers 8.7.1 How can I print big files (especially from SAMBA, the WfWg network program)? 8.8 Tape Drives. 8.8.1 What are the jumper configurations for the Exabyte 8200 DAT tape drive? 8.9 QIC-40/80 tape drives 8.10 CD-ROMs 8.10.1 How can I mount my CD-ROM so that it appears to be writable? 9.0 What GNU software has been tested and is working with Net/2 derived BSD systems for the 386? 9.1 Has anyone ever gotten news to work? 9.1.1 I want to make sure I have every set up right for my news partition. What newfs options do I need to use to get this information stored OK without future problems? 9.3 Has anyone tried to get Postgres to work? 9.4 Has anyone gotten the Java Developers Kit working? 9.5 Has anyone ever used any of the BSD systems for a Firewall? 9.6 How about the BSD Song? 0.1 A brief history of the *BSD family. In the beginning, there was Research Unix. Bell Labs, in a moment of utter abandon said "Let us produce progeny of Unix. yea verily, that we might garner a market share with this white elephant." In order to beget as many pretenders to the Unix throne as possible, they removed most of the copyright notices and released huge gobbets of code to Universities throughout the United States. From that humble decision came the very spark of what has arguably become the most successful, completely free Unix-style operating system you can make money on. There were several version of BSD roaming around, but they all had one thing in common. You HAD to have a source code license to the original Unix source to get a working version going. The bulk of the code was written at Berkeley, much of it by long-haired computer geeks, complete with bad complexions and pocket protectors. Many Master's Degrees were built on what was to follow. Then, suddenly, someone realized the amount of source code from the original Unix distribution was pretty much down to zilch. They decided that making the distribution available to the whole world (not just the select Unix license holders) seemed like a pretty 'groovy' (to use the vernacular) idea. From that came the Net distribution. William and Lynne Jolitz, with their standard flair and panache, decided to write the pieces that needed to be written. From that decision came 386BSD Version 0.0. Generally considered to be unusable, it was nonetheless a major coup, in that one no longer needed the dreaded 'source license' to produce working operating system images. Version 0.1 (generally considered to be the progenitor of all of the subsequent PC BSD systems) was released on Bastille Day, 1992. 386BSD 0.1 eventually came to be. Linux, the other entrant in the Free Unix-style OS family, had been running for about a year by then. Many people, wanting to stick with code that they already knew and which was in use in the commercial sector, decided to start using (and fixing) the 386BSD 0.1 code. As such, many contributions to the system are provided through interaction by people who communicate via many means. Many new and innovative features have been added to 386BSD since it's original release in July of '92. There was an 'unofficial' patchkit which was available from many anonymous FTP sources which made 386BSD more stable and usable. Many problems associated with the use of 386BSD Version 0.1 were solved through the application of patches from the patchkit. Now, more or less overcome by events, the original 386BSD, with its relationship to the AT&T/Berkeley out-of-court settlement, has become a rare piece of code to find. With some of the code considered 'suspect', it was removed from FTP sites world-wide. To replace the original 386BSD, three newer versions of the system are available, under new names. NetBSD is the oldest, FreeBSD followed shortly thereafter. Both systems have evolved into programs that are superior to their progenitor and both have sizable (if a little rabid) followings. The third entry in the group is a fairly recent entrant, called OpenBSD. Most of the statements made in this FAQ will apply to all three of the replacement systems, although I will try to differentiate one from another whenever the difference matters. Any place that says 386bsd either means the original 386bsd 0.1 or any of the members of the PC BSD family. There have been many attempts to polarize the *BSD development groups in the past. One of the reasons that I am still maintaining the FAQ is that it simply is a good source for historical information, as well as a reasonable source for information that is specific to the implementations of NetBSD, FreeBSD, and OpenBSD. It should be remembered that when the *BSD family started out, Bill and Lynne used a source called the "Berkeley Net Release/2" tape as their foundation. While this provided a stable starting point, it also built a possible bomb into the system. Due to a legal battle (which has now been resolved) the following files are identified as 'encumbered' in the BNR/2 source tree. These kernel files are identified as the 'binary only' files in the BSDI distribution, and either have been or must be replaced before we can have a truly free OS family. These files are the primary reason you won't find the original 386BSD Version 0.1 available for FTP anymore. 0.1.1 How close is NetBSD (or FreeBSD) to BSD 4.4? If you take a look at the README files that accompany each of these packages, you will find that each is based as closely as possible to BSD 4.4-Lite. The core development team for FreeBSD used the 4.4 Lite distribution and re-engineered the missing pieces to come up with the the current version of FreeBSD. The NetBSD developers started with the existing 386BSD files, and compared them to the unencumbered, freely releasable files from BSD 4.4. For both groups, any files which were not available (through being encumbered) were written from scratch to provide the functionality that was needed. Either way, both systems are close to BSD 4.4. Of course, each has differences that make it different from the other, and different from regular BSD 4.4. 0.1.3 Where can I get more information about the *BSD family of Operating Systems? Here are the current members of the *BSD family. These are presented in alphabetical order, to avoid implying anything. 386BSD - An older version of BSD now targeted exclusively at the research and academic community. CD distributions only, sold by Dr. Dobb's Journal. FreeBSD - A version of BSD for Intel platforms only and targeted at a broad user base. See http://www.freebsd.org for details or ftp://ftp.freebsd.org/pub/FreeBSD for the latest release. NetBSD - A version of BSD for many different platforms, from Intel to the 68K to the DEC ALPHA. See http://www.netbsd.org for more details or ftp://ftp.netbsd.org/pub/NetBSD for the latest release. OpenBSD - Another version of BSD. See http://www.openbsd.org for more details or ftp://ftp.openbsd.org/pub/OpenBSD for the latest release. 0.2 About this FAQ. This FAQ consists of several parts: Section 0. Basic FAQ information Section 1. General Network Information Section 2. Common installation questions Section 3. Kernel Building and Maintenance Section 4. Kernel Additions Section 5. Kernel Replacement Parts Section 6. Interaction with MS-DOS Section 7. System Communication Section 8. NetBSD for the Mac FAQ Section 9. NetBSD for the Amiga FAQ ... Section n. NetBSD for the Timex Sinclair FAQ It has been suggested that I remove some of the older, less relevant information from this FAQ. I have given it some thought, and I might. Of course, if someone were to do it for me, it sure wouldn't break my heart. 0.2.1 I want to start up a thread about why *BSD is or isn't as good as some other operating system. Can anyone suggest a good reason why I shouldn't? Jordan Hubbard, one of the FreeBSD core team members, has offered this missive on that very subject: [ Note: You could very well simply substitute the word "NetBSD", "OpenBSD", or "Windows 95" for "Linux" in the argument that follows ] From time to time, a thread in both the comp.os.386bsd.misc and comp.os.linux.misc groups flares up regarding which operating system is "better", FreeBSD or Linux. This generally provokes controversy from users on both sides, with one group claiming that their OS is "better" for some reason and the other group claiming that the first group doesn't know what the heck it's talking about. Both arguments are a waste of time. Rather than trying to win a rather questionable debate on relative (and constantly changing) technical merits, we should be asking ourselves what both groups are REALLY about and what they represent. This is naturally going to be a matter of personal opinion, but I believe even the most seriously at-odds members would agree that both operating systems represent a unique and long-awaited opportunity: The ability to run a fully featured operating system on popular, easily affordable hardware and for which all source code is freely available. Those who have been in computing for awhile will remember when the term `operating system' referred almost exclusively to something provided solely by the hardware vendor, with very little in the way of alternative options. It was never EVER given out with source code, and true "wizard" status could only be achieved by exerting mind-numbing amounts of effort and patience in digging through forbidden bits of binary data. By comparison, the situation today seems almost too good to be true! Certainly, the feeling of achievement that came from finally ferreting out some esoteric bit of information from a 4MB printed system dump was high, but I don't think that anyone would argue that it was hardly the most optimal way of truly getting to know your operating system! :-) So now, within a very short space of time, we're almost spoiled for choice in having machines several times more powerful than the first multi-user VAX machines and available for under $2000, and we've got not one but SEVERAL perfectly reasonable free operating systems to chose from. We are in a comparative paradise, and what are some of us doing? *Complaining* about it! I suppose too much is never enough, eh? :-) So, my essential point is simply this: For the first time ever we have what previous computing generations could only dream about; powerful computers at a reasonable prices and a wonderful selection of things to run on them. Be happy, read the source code you're so privileged to now have available (*believe* me! What I wouldn't have given, even 5 years ago!) and spend your energy in making constructive use of it, not in arguing with the guys on the other side of the fence! Additionally, it should be said that none of the FreeBSD team has anything but the highest degree of respect for Linus Torvalds and his "team" of dedicated volunteers (and we occasionaly exchange gripe mail about the huge volume of messages each of us gets as a direct result of being insane enough to volunteer to do something like this :-). Our common commitment to the Intel platform also gives us more common ground (and interests) than one might think and, if anything, it's a pity that we do not endeavor to share more code and effort - ideologically, at least, I'd say we share pretty similar goals. As to which is "best", I have only one standard reply: Try them both, see for yourself, think for yourself. Both groups have given you something for free, at considerable personal effort, and the least you can do is give them the benefit of exerting enough effort to try what they're offering out before passing judgment (or worse, blindly accepting someone else's!). Whichever you run, you're getting a great deal - enjoy! Jordan Hubbard 0.3 Are there any resources on the Net (like URLs) associated with the BSD family of operating systems? Yup: http://www.public.iastate.edu:~gendalia/FAQ/FAQ.list.html http://www.freebsd.org/ http://www.openbsd.org/ http://rfhs1012.fh.uni-regensburg.de/~feyrer/ http://www.cd.chalmers.se/~nh/netbsd.html http://www.flame.org/netbsd/projects ftp://ftp.uni-regensburg.de/pub/NetBSD-Amiga/.index.html ftp://ftp.cdrom.com:/pub/FreeBSD/packages/WWW.tgz ftp://ftp.netbsd.org:pub/NetBSD/mailing-lists ftp://flick.lerc.nasa.gov:~ftp/pub/NetBSD/packages/i386 ftp://ftp.iastate.edu:/pub/Netbsd/FAQ http://sirius.ics.es.osaka-u.ac.jp/~kamahara/NetBSD-X68060 http://wwwipd.ira.uka.de/~frueauf/FAQ/NetBSD-Amiga-X-FAQ.txt IF you are going to be using IRC in the near future and want to talk to some of the movers and shakers in NetBSD, the next time you log in look for one of the following people: <pre> Handle Channel 'hubertf' #netbsd </pre> 0.4 How to add your pet answer to the FAQ. This is the trickiest part of this section of the FAQ. There are only two criteria for getting an entry made into the FAQ: 1. Your answer should answer a question that seems to come up with some regularity, or at least perplexes a group of people from time to time. 2. Your answer should be technically correct. In other words, answers like 'RTFM' and 'everybody knows that' are not really good candidates for the FAQ. These answers should spell out, in a reasonable level of detail, precisely how to fix the the question asked, or explain the basis for the answer and leave the implementation of the answer to the questioner. All answers MUST include a question. This is not as obvious as it would seem at first glance. An answer could solve many problems, especially in the realms of system halts or other catastrophes. Since I (Dave) am no Unix guru, I rely HEAVILY on the input of other people to make the FAQ a success. Many questions in the FAQ have been made largely irrelevant through the patchkits, but that doesn't means they may not reappear. That is why the old FAQ questions are still here. New FAQ questions should be added. I will try to attribute the question/answer to the author, but I personally think this is a waste of good disk space. As long as the answers get out, that should be reward enough :-) 0.5 Administrivia. Send all question/answer pairs to burgess@cynjut.neonramp.com, If you are going to post the Q/A to the net, then do that, but be sure to mark it as a FAQ entry. I will get it from the net as easily as I do my E-Mail. Your Q/A will be formatted to look more or less like the others and be added. Corrections, deletions, flames, snivels, and whines should be addressed directly to me here. Either way, I will be sure to send out a reply letting you know what I have done with your submission. One last thing. I will assume that I am infalible. :-) I will not notice any mistakes that you may find. If you find a mistake and don't tell me, it will very likely stay a mistake. After all, if I didn't notice it before, why should I notice it now? 0.6 Does anyone reading this have any sense of humor at all? I'm not sure. While reasearching the great 'Linux vs. everyone else sucks' debate, I received this in E-Mail. The author's identity has been removed to protect him from the mail-bombs. For the humor impaired, stop reading now! ---------------------------------------------------------------- Many people ask the question "Which is better? FreeBSD, NetBSD, OpenBSD, or Linux?" Up until now, not many people are willing to answer thoroughly and give reasons. I, being a brave soul, am. This mini-FAQ lists the most significant differences between Linux, NetBSD, and FreeBSD in a fair and evenhanded manner. Permission is given to redistribute this mini-FAQ freely, with attribution. If anyone wants to take the burden of posting it periodically on the appropriate newsgroups, be my guest. This is based on a message I wrote some months ago. I've tried to update it substantially to reflect the changing nature of x86 OS's. ------------- Q) Which is better? NetBSD, OpenBSD, Linux, or FreeBSD? A) NetBSD is the best of the three because of it's superb error handling capabilities (this is the "Net" referred to in the name). With NetBSD, it's almost impossible to make a mistake, either in installation, or operation, because the system will "catch" you as you "fall". NetBSD works on a wide range of processors, including the Intel 386, 486, and 586, the Sun, Sparc, SGI, MIPS, Macintosh, Motorola 6809, Krupf, ADC Kentrox, Whirlpool, Amana, Zilog Z80, Timex-Sinclair, and the Braun. Currently, the NetBSD team is devoting all of their energies towards finishing the all-important IBM RT port. Linux is the successor to an operating system called "Minix". Linux was developed by Linus Pauling, a Finnish communist. Linux tries to uphold traditional Marxist values in several ways; firstly by using GNU tools from the FSF foundation wherever possible. The Linux kernel is developed by committee, and the operating system reflects this: rather than having one "init" process which fathers all others, a group of co-resident processes with equal powers are created simultaneously. "Kill" commands are treated as formal protests. Linux networking has come a long way since it's implementation, and there is no truth whatsoever to the rumor that sudden losses of IP connectivity are in any way related to future plans to limit users to 1.5 hours of SLIP or PPP unless they send in the registration fee. FreeBSD was a radical offshoot of the Linux project; you could consider it to be of the Trotskyite school. FreeBSD supports an extremely wide range of PC hardware, as long as it was obtained at less than cost. FreeBSD is used by Amnesty International and many other human rights organizations. FreeBSD supports every peripheral available for the IBM PC except the ones you have. The FreeBSD team was actually responsible for porting "Doom" to Linux, in a successful effort to slow down constructive work by distracting the central committee with frivolous games. FreeBSD has the nicest installation of any of the x86 unices -- you install the boot disks, which then initialize the modem and call Jordan "Perky" Hubbard, who then comes to your house with the rest of the disks and completes the installation. The FreeBSD CD-ROM plays various Nick Cave and Tom Waits songs Jordan is known to be fond of. 386bsd was written by Bill Jolitz in a fit of pique. It was based entirely on Sun's widely-respected "Solaris" operating system, as revenge against Sun's Bill Joy, who rudely chose a name with the same initials as Jolitz. A new version of 386bsd will be released very soon. Unfortunately, it will only run on 386es, and thus is unsuitable for anyone with a 486 or Pentium. 486bsd should be released "sometime in 2138," according to industry insider James Monroe, Sr. DID YOU KNOW? ============= 1) The Free and Net BSD teams split up in the year 1632. The cause of the split is uncertain, but it seems to have something to do with someone named "Janice." They still get together for drinks occasionally, and remember old times. Every so often, after tying on a few too many, they end up waking up next to each other and feel ashamed over their night of pleasure. The kids still blame themselves. 2) The Linux kernel has actually not changed at all since January, '94? Linus just increments "version.c" once every 48 hours and unleashes the "change" on an unsuspecting Internet, bringing FTP servers to their knees. A book, "The Design and Implementation of the Linux Operating System," by Gary Marshall James T. Kirk McUsenet, was rejected by Addison-Wesley on the grounds that they didn't feel the public was prepared to purchase a book written on looseleaf paper with diagrams in crayon. 3) All three systems claim to be "POSIX" compliant. However, the POSIX people have denied knowing anything about it. Scuttlebutt in the industry is that POSIX will soon be outdated, and will be replaced by GNOPIX, a FSF standard which implements the TOPS-20 operating system in Scheme. -- Dave Burgess Network Engineer - Nebraska On-Ramp, Inc. *bsd FAQ Maintainer / SysAdmin for the NetBSD system in my spare bedroom "Just because something is stupid doesn't mean there isn't someone that doesn't want to do it...."