FreeBSD: An Open-Source Operating System for Your Personal Computer

by Annelise Anderson

About the Book

This is a book for users new to both FreeBSD and UNIX. It covers FreeBSD 4.1, 4.2, 4.3, and 4.4, and has a 4.4 installation CD-ROM --or even a later one, possibly even 4.11--as of the Second Edition.

You may be able to get a hard copy from Daemonnews Mall for $24.00, but Amazon is out of stock.

Resellers used to be able to order from Cylogistics, but I think they're out of stock now too.

Thus I'm offering the book in pdf format, in four blocks. This is the complete text as of the second or third printing of the second edition. Keep in mind that the text does not cover versions of FreeBSD after 4.x--it doesn't cover versions 5 or 6.

It's also still under copyright (which I own), and is thus available here only for personal use, not for commercial printing and sale.

Here are the files:

Front matter, Table of Contents, and Acknowledgments

Chapters 1-8

Chapters 9-17

Chapters 18-20, Appendixes, and Index

Here's a jpeg of the jacket of the first edition of the book

...and the copy from the back of the jacket

Jacket Text

Here's a jpeg of the jacket of the second edition of the book, which has a 4.4 CD-ROM and a few corrections and minor additions

Updates

I will be adding to this page updates (for example, for FreeBSD 4.4 when it is released), corrections, and perhaps most useful, files of some of the stuff in the book so you don't have to type them in yourself.

Here are the .bash_profile and .bashrc files listed on pages 117-19, as text files so you can save them to your home directory without overwriting files there now. You'll have to move them to their proper names and make sure they have 644 permissions.

dot.bash_profile

dot.bashrc

Here is the getdescr file listed on page 209; put it in /usr/ports, make it executable (chmod 755 getdescr) and use ./getdescr archivers (or whatever ports category interests you). Redirect it to a file with >archivers.txt (for example) to read it at your leisure.

getdescr file

Here's a .AU sound file

Here's a shorter sound file

Note that the cvsup program should be updated post-September 9, when a 1,000,000,000th second bug was discovered. The 4.3 installation CD-ROM and in fact all versions of cvsup (and cvsup-bin) until the correction have this bug. Use an ftp client and go to /pub/FreeBSD/releases/i386/4.4-RELEASE/ packages/net/ and get cvsup-16.1d.tgz, or cvsup-16.1e.tgz, download it, and run pkg_add on it. Or install it as a package from the 4.4-RELEASE installation program. Or get it from http://people.freebsd.org/~jdp/s1g/

The original 4.4-RELEASE install ISO didn't have a tools directory. Neither did the mini.iso (same as the install iso without packages). You need to download fdimage.exe to make boot floppies if your computer won't boot the installation CD-ROM and you don't want to get the new iso (Sept. 22 or so). Since there's no tools directory, fips and other utilities (like osbsbeta) are also missing. You probably don't need them. After FreeBSD is installed, you can make floppies with the dd command.

Note also that in 4.4-RELEASE, pressing Enter will put an X in a box (thus selecting the item). You may need to press Tab to get to select "OK" when your selections are finished.

Errors in the First Edition

Chapter 3, p. 43, last line: 128GB should be 128MB (corrected in 2nd printing)

Chapter 4, p. 61, line 28: ftp.freebsd/org should be ftp.freebsd.org

Chapter 6, p. 124, line 20: 5. Save the file. should be 5. Save the file and exit the editor.

Chapter 7, p. 142, line 17: /var/log/ftpd/log should be /var/log/ftpd.log

Chapter 7, p. 153, line 22: in (first word in the line) should be it

Chapter 15, p. 300, line 10: chmod should be chown

Chapter 16, p. 328, lines 1, 2, and 3: -D_NOMODULES should be -DNO_MODULES

Chapter 16, p. 328, line 3: /etc/defaults/rc.conf should be /etc/defaults.make.conf

Notes on 4.5: a 0 value for maxusers in your kernel configuration file will cause the actual maxusers number to be sized in accordance with RAM, which is probably a good thing.

Also in 4.5, on installation softupdates are toggled on by default in all file FreeBSD file systems except /. This is good. In 4.4-RELEASE you can toggle them on when you install in the DiskLabel Editor, which saves you from having to do it later.

Notes on 4.6: Be sure to read the errata on www.freebsd.org for this release if you're having trouble with an ide CDROM. Also, the example supfiles in /usr/share/examples/cvsup aren't there on installation. They do not install with the cvsup port; however you can copy them from /usr/src/examples/cvsup if you have full source installed, or install the src/examples distribution from the CD first if necessary. However, you can download them by anonymous ftp from andrsn.stanford.edu; they're in the /pub directory in the file supfiles.tgz

Run tar xzf supfiles.tgz to create a directory called supfiles, which will have the example files in it; move them wherever you like or use them from that directory.

Also on 4.6: The versions of apache in ports on the CD were added before the security updates in apache, so don't use them--get a newer version.

Annelise Anderson