FreeBSD Handbook

The FreeBSD Documentation Project

February 1999


Welcome to FreeBSD! This handbook covers the installation and day to day use of FreeBSD Release 2.2.8. This manual is a work in progress and is the work of many individuals. Many sections do not yet exist and some of those that do exist need to be updated. If you are interested in helping with this project, send email to the FreeBSD documentation project mailing list <freebsd-doc@FreeBSD.ORG> . The latest version of this document is always available from the FreeBSD World Wide Web server. It may also be downloaded in plain text, postscript, PDF or HTML with HTTP or gzip'd from the FreeBSD FTP server. or one of the numerous mirror sites. You may also want to Search the Handbook.

Part 1:
Getting Started

1. Introduction

1.1. FreeBSD in a Nutshell
1.2. A Brief History of FreeBSD
1.3. FreeBSD Project Goals
1.4. The FreeBSD Development Model
1.5. About the Current Release

2. Installing FreeBSD

2.1. Supported Configurations
2.2. Preparing for the Installation
2.3. Installing FreeBSD
2.4. MS-DOS User's Questions and Answers

3. Unix Basics

3.1. The Online Manual
3.2. GNU Info Files

4. Installing Applications: The Ports collection

4.1. Why Have a Ports Collection?
4.2. How Does the Ports Collection Work?
4.3. Getting a FreeBSD Port
4.4. Skeletons
4.5. What to do when a port does not work.
4.6. Some Questions and Answers
4.7. Making a port yourself

Part 2:
System Administration

5. Configuring the FreeBSD Kernel

5.1. Why Build a Custom Kernel?
5.2. Building and Installing a Custom Kernel
5.3. The Configuration File
5.4. Making Device Nodes
5.5. If Something Goes Wrong

6. Security

6.1. DES, MD5, and Crypt
6.2. S/Key
6.3. Kerberos
6.4. Firewalls

7. Printing

7.1. What the Spooler Does
7.2. Why You Should Use the Spooler
7.3. Setting Up the Spooling System
7.4. Simple Printer Setup
7.5. Using Printers
7.6. Advanced Printer Setup
7.7. Alternatives to the Standard Spooler
7.8. Acknowledgments

8. Disks

8.1. Using sysinstall
8.2. Using command line utilities
8.3. * Non-traditional Drives

9. Backups

9.1. * What about backups to floppies?
9.2. Tape Media
9.3. Backup Programs

10. Disk Quotas

10.1. Configuring Your System to Enable Disk Quotas
10.2. Setting Quota Limits
10.3. Checking Quota Limits and Disk Usage
10.4. * Quotas over NFS

11. The X Window System

12. PC Hardware compatibility

12.1. Resources on the Internet
12.2. Sample Configurations
12.3. Core/Processing
12.4. Input/Output Devices
12.5. Storage Devices
12.6. * Other

13. Localization

13.1. Russian Language (KOI8-R encoding)
13.2. German Language (ISO 8859-1)

Part 3:
Network Communications

14. Serial Communications

14.1. Serial Basics
14.2. Terminals
14.3. Dialin Service
14.4. Dialout Service

15. PPP and SLIP

15.1. Setting up User PPP
15.2. Setting up Kernel PPP
15.3. Setting up a SLIP Client
15.4. Setting up a SLIP Server

16. Advanced Networking

16.1. Gateways and Routes
16.2. NFS
16.3. Diskless Operation
16.4. ISDN

17. Electronic Mail

17.1. Basic Information
17.2. Configuration
17.3. FAQ

Part 4:
Advanced topics

18. The Cutting Edge: FreeBSD-current and FreeBSD-stable

18.1. Staying Current with FreeBSD
18.2. Staying Stable with FreeBSD
18.3. Synchronizing Source Trees over the Internet
18.4. Using make world to rebuild your system

19. Contributing to FreeBSD

19.1. What Is Needed
19.2. How to Contribute
19.3. Donors Gallery
19.4. Core Team Alumnus
19.5. Derived Software Contributors
19.6. Additional FreeBSD Contributors
19.7. 386BSD Patch Kit Patch Contributors

20. Source Tree Guidelines and Policies

20.1. MAINTAINER on Makefiles
20.2. Contributed Software
20.3. Shared Libraries

21. Adding New Kernel Configuration Options

21.1. What's a Kernel Option, Anyway?
21.2. Now What Do I Have to Do for it?

22. Kernel Debugging

22.1. Debugging a Kernel Crash Dump with KGDB
22.2. Post-mortem Analysis of a Dump
22.3. On-line Kernel Debugging Using DDB
22.4. On-line Kernel Debugging Using Remote GDB
22.5. Debugging a Console Driver

23. Linux Emulation

23.1. How to Install the Linux Emulator
23.2. How to Install Mathematica on FreeBSD

24. FreeBSD Internals

24.1. The FreeBSD Booting Process
24.2. PC Memory Utilization
24.3. DMA: What it Is and How it Works
24.4. The FreeBSD VM System

Part 5:
Appendices

25. Obtaining FreeBSD

25.1. CD-ROM Publishers
25.2. FTP Sites
25.3. CTM Sites
25.4. CVSup Sites
25.5. AFS Sites

26. Bibliography

26.1. Books & Magazines Specific to FreeBSD
26.2. Users' Guides
26.3. Administrators' Guides
26.4. Programmers' Guides
26.5. Operating System Internals
26.6. Security Reference
26.7. Hardware Reference
26.8. UNIX History
26.9. Magazines and Journals

27. Resources on the Internet

27.1. Mailing lists
27.2. Usenet newsgroups
27.3. World Wide Web servers

28. FreeBSD Project Staff

28.1. The FreeBSD Core Team
28.2. The FreeBSD Developers
28.3. The FreeBSD Documentation Project
28.4. Who Is Responsible for What

29. PGP keys

29.1. Officers
29.2. Core Team members
29.3. Developers