A wide variety of documentation is available for FreeBSD, on this web site, on other web sites, and available over the counter.
All the documentation on this site can be downloaded in a variety of different formats (HTML, Postscript, PDF, and more) and compression schemes (GZip, BZip2, Zip) from the FreeBSD FTP site.
This documentation is provided and maintained by the FreeBSD Documentation Project, and we are always looking for people to contribute new documentation and maintain existing documentation.
The
FreeBSD FAQ (faq)
Frequently Asked Questions, and answers, covering all
aspects of FreeBSD.
The
FreeBSD Handbook (handbook)
A constantly evolving, comprehensive resource for
FreeBSD users.
The FreeBSD Developer's Handbook
(developers-handbook)
For people who want to develop software for FreeBSD
(and not just people who are developing FreeBSD
itself).
The
FreeBSD Architecture Handbook
(arch-handbook)
For FreeBSD system developers. This book covers the
architectural details of many important FreeBSD kernel
subsystems.
The
Porter's Handbook (porters-handbook)
Essential reading if you plan on providing a port of a
third party piece of software.
Chapter
2 of "The Design and Implementation of the 4.4BSD Operating
System" (design-44bsd)
Donated by Addison-Wesley, provides a design overview
of 4.4BSD, from which FreeBSD was originally
derived.
Chapter
8 of "The FreeBSD Corporate Networker's Guide"
(corp-net-guide)
Donated by Addison-Wesley, provides an in-depth look at
using FreeBSD to provide printing services to Windows, NT, and
Novell hosts.
The FreeBSD
Documentation Project Primer for New Contributors
(fdp-primer)
Everything you need to know in order to start
contributing to the FreeBSD Documentation Project.
The
Roadmap for 5-STABLE (5-roadmap)
Describes medium-term development and release
engineering plans leading to the 5-STABLE branch
point.
Integration
of Checkpoint VPN-1/Firewall-1 and FreeBSD IPsec
(checkpoint)
How to configure Checkpoint VPN-1/Firewall-1 and
FreeBSD IPsec.
The Committer's Guide (committers-guide)
Introductory information for FreeBSD
committers.
Console Server Tutorial (console-server)
How to setup a FreeBSD based console server with a
cheap multi-port serial card.
Contributing
to FreeBSD (contributing)
How to contribute to the FreeBSD Project.
The
List of FreeBSD Contributors (contributors)
A list of organizations and individuals who have helped
enhance FreeBSD.
Setting
up a CVS repository - The FreeBSD way
(cvs-freebsd)
How to set up a CVS repository that uses the same
CVSROOT infrastructure as the FreeBSD project.
CVSup Advanced Points (cvsup-advanced)
An article with some tips about the subtleties of
CVSup.
Dialup
firewalling with FreeBSD (dialup-firewall)
How to set up a firewall using PPP and ipfw over a
dialup link with dynamically assigned IP addresses.
Creating
a diskless X server (diskless-x)
How to create a diskless X server.
The
Euro symbol on FreeBSD (euro)
How to configure FreeBSD and related applications to
display the new Euro symbol.
Explaining
BSD (explaining-bsd)
An answer to the question ``What is BSD?''
FreeBSD From Scratch (fbsd-from-scratch)
How to automatically compile, install and configure a
system from scratch (i.e. to an empty file system), including
your favorite ports.
Filtering Bridges (filtering-bridges)
Configuring firewalls and filtering on FreeBSD hosts
acting as bridges rather than routers.
Fonts and
FreeBSD (fonts)
A description of the various font technologies in
FreeBSD, and how to use them with different
programs.
Formatting media on FreeBSD
(formatting-media)
How to slice, partition, and format fixed and removable
media on FreeBSD.
How to get the best results from the FreeBSD-questions mailing
list (freebsd-questions)
Tips and tricks to help you maximize the chances of
getting useful information from the -questions mailing
list.
Working
with Hats (hats)
A committer's guide to working with ``hats'' (other
committers with authority over specific areas of
FreeBSD).
Mirroring
FreeBSD (hubs)
The all in one guide for mirroring the FreeBSD website,
CVSup servers, FTP servers, and more.
Independent
Verification of IPsec Functionality in FreeBSD
(ipsec-must)
A method for experimentally verifying IPsec
functionality.
Java,
and Jakarta Tomcat (java-tomcat)
Information on setting up Java and Jakarta Tomcat on a
FreeBSD system.
FreeBSD
on Laptops (laptop)
Information about running FreeBSD on a
laptop.
An MH
Primer (mh)
An introduction to using the MH mail reader on
FreeBSD.
Using
FreeBSD with other operating systems
(multi-os)
How to install FreeBSD alongside one or more different
operating systems on the same computer.
FreeBSD
First Steps (new-users)
For people coming to FreeBSD and UNIX® for the
first time.
Pluggable
Authentication Modules (pam)
A guide to the PAM system and modules under
FreeBSD.
FreeBSD
Problem Report Handling Guidelines
(pr-guidelines)
Recommended practices for handling FreeBSD problem
reports.
Writing FreeBSD Problem Reports
(problem-reports)
How to best formulate and submit a problem report to
the FreeBSD Project.
Programming Tools on FreeBSD
This document has moved into
The Developer's Handbook.
PXE
booting FreeBSD (pxe)
How to create an Intel PXE server using FreeBSD, and
how to configure a FreeBSD client to boot from a PXE
server.
FreeBSD
Release Engineering (releng)
Describes the approach used by the FreeBSD release
engineering team to make production quality releases of the
FreeBSD Operating System. It describes the tools available for
those interested in producing customized FreeBSD releases for
corporate rollouts or commercial productization.
FreeBSD
Release Engineering for Third Party Packages
(releng-packages)
Describes the approach used by the FreeBSD release
engineering team to produce a high quality package set suitable
for official FreeBSD release media. This document is a work in
progress, but eventually it will cover the process used to
build a clean package set on the FreeBSD.org "Ports Cluster",
how to configure any other set of machines as a ports cluster,
how to split up the packages for the release media, and how to
verify that a package set is consistent.
Serial
and UART devices (serial-uart)
Detailed information about the use of serial ports on
FreeBSD, including several multi-port serial cards.
FreeBSD
and Solid State Devices (solid-state)
The use of solid state disk devices in
FreeBSD.
Storage
Devices (storage-devices)
Detailed information about using storage devices with
FreeBSD, including ESDI disks, and SCSI disks, tape drives, and
CDROM drives.
Bootstrapping
Vinum: A Foundation for Reliable Servers
(vinum)
A gentle introduction to failure-resilient servers and
step-by-step instructions for building one with
Vinum.
Design
elements of the FreeBSD VM system
(vm-design)
An easy to follow description of the design of the
FreeBSD virtual memory system.
Zip-drives
and FreeBSD (zip-drive)
How to format, mount, and use an Iomega Zip (SCSI, IDE,
or parallel) Drive on FreeBSD.
4.4BSD Documents: This is a hypertext version of the 4.4BSD documents from /usr/share/doc, where you will find the documents on a FreeBSD machine (if you install the doc distribution).
Info Documents: This is a hypertext version of the Info documents from /usr/share/info, where you will find the Info documents on a FreeBSD machine (if you install the info distribution).
Various independent efforts have also produced a great deal of useful information about FreeBSD.
A Comprehensive Guide to FreeBSD - an attempt at a more readable, "book-like" tutorial explaining the FreeBSD Operating System. Intended for people new to both FreeBSD and UNIX. Currently a work in progress.
Niels Jorgensen has authored an academic study on the dynamics of the FreeBSD development process: ``Putting it All in the Trunk, Incremental Software Development in the FreeBSD Open Source Project'' [Information Systems Journal (2001) 11, 321-336].
Computer Bits, an Internet online magazine, has, since March 1996, been running an excellent series of FreeBSD related articles in their column titled The Network Community, by Ted Mittelstaedt.
Some of the more popular articles include: Setting up a FreeBSD-based mail server, Network Address Translation, and Building a fax server.
Kirk McKusick, one of the original architects of BSD at U.C. Berkeley, teaches two 4.4BSD Kernel Internals courses using FreeBSD. For those unable to attend the courses in person, a video tape series is also now available.
FreeBSD How-To's for the Lazy and Hopeless is another somewhat more light-hearted attempt to provide more readable "how-to" style information on setting up and configuring FreeBSD.
The Linux+FreeBSD mini-HOWTO describes how to use Linux and FreeBSD on the same system. It introduces FreeBSD and discusses how the two operating systems can cooperate, e.g. by sharing swap space.
FreeBSD Installation Details for Newbies. This document has been imported into The FreeBSD Handbook.
Writing an ISA device driver. This document has been imported into The Developers Handbook.
FreeBSD Assembly Language Programming Tutorial. This document has been imported into The Developers Handbook.
Tatsumi Hosokawa's Mobile Computing page is useful for people running FreeBSD 3.X and earlier on laptops.
The SMP support page contains information on the SMP support in FreeBSD 4.X and earlier.
Appendix A from the college textbook Operating Systems Concepts by Silberschatz, Galvin and Gagne has been made available online in PDF format. The appendix is dedicated to FreeBSD and offers a good introduction to FreeBSD's internals.
The Open Directory Project offers an excellent selection of links for FreeBSD, including a list of prominent users which can be helpful for marketing purposes.
The FreeBSD Multimedia Page contains links to a variety of multimedia resources, including the Bt848 video capture chip.
Articles in the press about FreeBSD.
The following newsgroups contain discussion pertinent to FreeBSD users:
The FreeBSD project's current statement about its Year 2000 compatibility.
A monthly (sometimes bi-weekly) newsletter announcing recent developments in the FreeBSD arena. Subscribe to freebsd-announce to receive this newsletter via e-mail.
If you like digging your fingers into source code, here is a hypertext version of the FreeBSD kernel source. This is brought to you courtesy of Warren Toomey.
The industry leader in BSD news.
Like FreeBSD itself, this documentation is the product of a volunteer effort. The goals of the project are outlined here, as are the procedures for submitting corrections and new material.
The FreeBSD Diary is a collection of how-to entries aimed at UNIX novices. The aim is to provide a set of step-by-step guides to installing and configuring various ports.
The BSD Dev Center includes two regular columns on FreeBSD, featuring tips and tutorials.