| | Copyright |
| | About the Author |
| | Acknowledgments |
| | We Want to Hear from You! |
| | Reader Services |
| | Introduction |
| | Part I: Introduction to FreeBSD |
| | | Chapter 1. What Is FreeBSD? |
| | | Why Use FreeBSD? |
| | | What Can You Do with FreeBSD? |
| | | FreeBSD: It's Not Just for Servers Anymore |
| | | A Brief History of FreeBSD and UNIX |
| | | The Design Philosophy of UNIX |
| | | How FreeBSD Compares to Other Operating Systems |
| | | "Beastie," the FreeBSD Mascot |
| | | Chapter 2. Installing FreeBSD |
| | | Checking Your Hardware |
| | | Creating Installation Floppies |
| | | Booting into the Install Program |
| | | Navigating the Sysinstall Program |
| | | Creating Partitions and Assigning Mount Points |
| | | Selecting a Canned Distribution Set |
| | | Choosing the Installation Media |
| | | Post-installation Configuration and Customization |
| | | Exiting the Sysinstall Program and Rebooting the System |
| | | Booting FreeBSD for the First Time |
| | | Setting Up the X Window System (X11) |
| | | Shutting Down FreeBSD |
| | | Chapter 3. Advanced Installation Tasks |
| | | Backing Up an Existing Windows or Linux Filesystem |
| | | Nondestructive Hard Disk Partitioning with FIPS |
| | | Working with FIPS |
| | | Potential Problems with and Limitations of Dual-Boot Systems |
| | | The FreeBSD Boot Manager |
| | | Alternative Installation Methods |
| | Part II: FreeBSD on the Desktop |
| | | Chapter 4. Booting and Shutting Down FreeBSD |
| | | The FreeBSD Startup Process |
| | | Logging In to FreeBSD |
| | | Logging Out of FreeBSD |
| | | Shutting Down the FreeBSD System |
| | | Chapter 5. Working with the X Window System |
| | | Introduction to X11 |
| | | The X Server |
| | | Window Managers |
| | | KDE and GNOME |
| | | Working with Window Managers |
| | | The Window Maker Window Manager |
| | | Chapter 6. Working with Applications |
| | | Running GUI and CLI Applications |
| | | Working with Text |
| | | Office Applications |
| | | Creating and Editing Images with GIMP |
| | | Audio Applications |
| | | Networking Applications |
| | | Working with Java Applications |
| | | Chapter 7. Advanced X11 Configuration |
| | | Configuring X11 with the xorgconfig Script |
| | | Understanding the xorg.conf File |
| | | Testing the X11 Setup |
| | | Your Personal .xinitrc File |
| | | Working with Fonts |
| | | Using Remote X11 Clients |
| | | Using the XDM Graphical Login Manager |
| | Part III: FreeBSD on the Command Line |
| | | Chapter 8. Working with the Shell |
| | | Introducing the Shell |
| | | Choosing a Shell for FreeBSD |
| | | Changing Your Shell |
| | | Getting Help in the Shell |
| | | Basic Shell File Manipulation |
| | | Text-Related Commands |
| | | Pipes and Input/Output Redirection |
| | | Command Completion and History Editing |
| | | Chapter 9. Customizing the Shell |
| | | Adding Shells to the System and Making Them Available |
| | | Using Alternative Shells |
| | | Shell Initialization Files |
| | | Customizing Your Shell Environment |
| | | Shell and Environment Variables |
| | | Chapter 10. Shell Programming |
| | | Why Shell Programming Matters to You |
| | | A Simple Shell Program |
| | | Variables |
| | | Interacting with the User |
| | | Arithmetic in Shell Programs |
| | | Loops |
| | | Conditional Statements |
| | | Exit Status |
| | | Functions |
| | | Filehandles |
| | | Debugging Shell Scripts |
| | | Advanced Features of Korn Shell Scripting |
| | | Chapter 11. Introduction to Perl Programming |
| | | Perl in FreeBSD |
| | | Fundamentals of Perl Scripting |
| | | A Simple Perl Script |
| | | Advanced Perl Techniques |
| | | Useful Perl Resources |
| | Part IV: System Administration |
| | | Chapter 12. The FreeBSD Filesystem |
| | | The FreeBSD Directory Structure |
| | | Monitoring Filesystem Usage |
| | | Mounting and Unmounting FreeBSD Filesystems |
| | | Mounting and Unmounting Filesystems from Other Operating Systems |
| | | Mounting and Unmounting CD-ROM and Floppy-Based Filesystems |
| | | Understanding the /etc/fstab File |
| | | Checking and Repairing Filesystems with fsck |
| | | Setting and Enforcing Disk Usage Quotas |
| | | Blocks, Files, and Inodes |
| | | Chapter 13. Users, Groups, and Permissions |
| | | Introduction to Users and Groups |
| | | Why Use Groups? |
| | | File Ownership |
| | | File and Directory Permissions |
| | | Access Control Lists (ACLs) |
| | | Adding and Removing Users |
| | | User Management Using NIS |
| | | Chapter 14. System Configuration and Startup Scripts |
| | | Understanding the FreeBSD Startup Process |
| | | Resource Configuration Scripts |
| | | The inetd Daemon and the inetd.conf Configuration File |
| | | The System Logger (syslogd) and the syslog.conf File |
| | | Notes on the /etc/rc.local File |
| | | Chapter 15. Performance Monitoring, Process Control, and Job Automation |
| | | Performance Monitoring with top |
| | | Process Monitoring with ps |
| | | Terminating Misbehaving Processes |
| | | Making Processes "Nice" |
| | | Automating Processes with the cron Scheduler Daemon |
| | | Creating Jobs to Run One Scheduled Time with the at Command |
| | | Controlling Access to the cron and at Commands |
| | | Using the Periodic Task Scheduler |
| | | Chapter 16. Installing Additional Software |
| | | Introduction to Packages |
| | | Installing Packages |
| | | Removing and Updating Packages |
| | | Introduction to Ports |
| | | Installing and Removing Ports |
| | | Updating and Maintaining Your Ports |
| | | Upgrading a Port |
| | | Fresh Ports |
| | | Chapter 17. Printing |
| | | How lpd, the Print Spooler, and the Print Queue Function in FreeBSD |
| | | Kernel, Device, and Communications Mode Configuration |
| | | Creating the Spool Directory and Setting Its Permissions |
| | | Setting Up Text and Conversion Filters |
| | | Configuring /etc/printcap to Control Print System Functions |
| | | Enabling lpd for Command-Line Printing |
| | | Basic Command-Line Printing |
| | | Printing from X11 Applications |
| | | Using the lpq Command to Check the Status of Print Jobs |
| | | Removing Jobs from the Queue with the lprm Command |
| | | Controlling Printers |
| | | Basic Network Printing |
| | | Next-Generation Printing with CUPS |
| | | Troubleshooting |
| | | Chapter 18. Kernel Configuration |
| | | The Role of the Kernel |
| | | Kernel Modules |
| | | Why Configure a Custom Kernel? |
| | | The Kernel Configuration Files |
| | | Creating a Custom Kernel Configuration File |
| | | Compiling and Installing the Custom Kernel |
| | | Adding Device Nodes to the /dev Directory |
| | | Recovering When Something Goes Wrong |
| | | Chapter 19. Keeping Up to Date with FreeBSD |
| | | Tracking the FreeBSD Sources |
| | | Upgrading with make world |
| | | Things to Consider Before Choosing a make world Upgrade |
| | | Premake world Tasks |
| | | Rebuilding Your System from Sources |
| | | Using mergemaster to Check for Changed Configuration Files |
| | | Rebooting After the Upgrade |
| | | Chapter 20. Adding Hard Disk Storage |
| | | IDE/ATA Access Modes |
| | | SCSI Disks |
| | | Understanding Hard Disk Geometry |
| | | Partitioning a Hard Disk |
| | | Creating the Disk Labels |
| | | Making the Filesystem Available for Use |
| | | Enhancing Disk Performance Using RAID and Vinum |
| | | Chapter 21. FreeBSD Survival Guide |
| | | Migrating to FreeBSD |
| | | Do's and Don'ts (Common Gotchas) |
| | | Performance Tuning |
| | | Preparing for the Worst: Backups and Mirrors |
| | Part V: FreeBSD Networking |
| | | Chapter 22. Principles of TCP/IP Networking |
| | | Introduction to Networking |
| | | Network Topologies |
| | | Network Components |
| | | Wireless Routers |
| | | Network Protocols |
| | | IP Addresses |
| | | Routing |
| | | Hostnames and Domain Names |
| | | The Dynamic Host Configuration Protocol (DHCP) and Automatic IP Addressing |
| | | Chapter 23. Configuring Basic Networking Services |
| | | Configuring the Network Card |
| | | Configuring Network Settings with Sysinstall |
| | | Configuring Network Settings Without Sysinstall |
| | | Creating IP Aliases |
| | | Mapping Names to IP Addresses with the /etc/hosts File |
| | | Testing Network Connectivity with ping |
| | | Configuring DNS with the /etc/resolv.conf File |
| | | A Look at Other Network Configuration Files |
| | | Chapter 24. Networking with PPP and 802.11 |
| | | Dialing Up with PPP |
| | | PPP Over Ethernet (PPPoE) |
| | | Troubleshooting PPP |
| | | Connecting to a Wireless (802.11) Network |
| | | Chapter 25. Configuring Email Services |
| | | Introduction to SMTP |
| | | Mail Transfer Agents (MTAs) and Mail User Agents (MUAs) |
| | | Configuring Basic Email Services with Sendmail |
| | | Understanding Relaying |
| | | Introduction to POP3 |
| | | Configuring a POP3 Server with Qpopper |
| | | Configuring an IMAP Server with IMAP-UW |
| | | Email for Standalone Workstations |
| | | Filtering Junk Mail with Procmail and SpamAssassin |
| | | A Look at Some Sendmail Replacements |
| | | Chapter 26. Configuring a Web Server |
| | | Introduction to the HTTP Protocol |
| | | Obtaining and Installing Apache |
| | | Apache File Layout |
| | | Configuring Apache |
| | | Starting and Stopping the HTTP Daemon |
| | | Basic Access Control with Apache |
| | | Virtual Hosting |
| | | Introduction to Apache Modules |
| | | Server-Side Includes |
| | | Introduction to CGI |
| | | Chapter 27. Configuring an FTP Server |
| | | Introduction to the File Transfer Protocol |
| | | File Layouts of Authenticated and Anonymous FTP |
| | | Configuring the FTP Server |
| | | Controlling FTP Access |
| | | Allowing Anonymous FTP Access |
| | | Virtual Hosting |
| | | Using Alternative FTP Servers |
| | | Chapter 28. Configuring an Internet Gateway |
| | | The Basics of Routers and Network Address Translation (NAT) |
| | | Configuring a NAT Gateway in FreeBSD |
| | | Enabling NAT for Systems Without Static IP Addresses |
| | | Configuring Clients to Use the New Gateway |
| | | Configuring a Wireless Internet Access Point |
| | | Routing Between Three or More Networks |
| | | Dynamic Routing |
| | | Chapter 29. Configuring a Database Server |
| | | Introduction to Database Design and Administration |
| | | SQL: Structured Query Language |
| | | Using the MySQL and PostgreSQL Open-Source Databases |
| | | Constructing a Database System |
| | | Writing Administration Scripts |
| | | Connecting a Database to the Web |
| | | Using PHP to Provide Database-Driven Content to Web Pages |
| | | Optimizing Database Performance |
| | | Performing Database System Backups |
| | | Chapter 30. Network Security |
| | | Choosing a Security Model Based on Your Security Risks |
| | | Security Models |
| | | The Security Risks You Face |
| | | Password Policies |
| | | Avoiding Problems with Clear-Text Services |
| | | Securing Terminal Traffic (SSH) |
| | | Securing Email Services (POP3 and IMAP) |
| | | Securing FTP |
| | | Securing Apache |
| | | System Security Profiles and Kernel Security (Securelevels) |
| | | Using a Firewall |
| | | Preventing Intrusions and Compromises |
| | | Denial of Service (DOS) Attacks |
| | | Physical Security |
| | | Other Security Resources |
| | | Chapter 31. Virtual Private Networks (VPNs) |
| | | What Is a VPN? |
| | | VPN Topologies |
| | | VPN Services in FreeBSD: IPSec |
| | | FreeBSD as a VPN Server |
| | | Chapter 32. The Domain Name Server |
| | | Introduction to DNS Structure, Functions, and Software |
| | | Enabling the Name Server Daemon |
| | | Running BIND in a Sandbox |
| | | Working with the BIND Configuration File (named.conf) |
| | | Creating a Zone File |
| | | Configuring a Caching Name Server |
| | | Chapter 33. The Network Filesystem (NFS) |
| | | Introduction to NFS |
| | | Configuring an NFS Server |
| | | Configuring an NFS Client |
| | | Auto-Mount Daemon (amd) |
| | | Chapter 34. File and Print Sharing with Microsoft Windows |
| | | SMB/CIFS and Samba |
| | | Installing and Configuring Samba |
| | | Other Samba Components |
| | | Accessing Shared Files on a Windows System (the smbfs Filesystem) |
| | | Chapter 35. Dynamic Host Configuration Protocol (DHCP) |
| | | How DHCP Works |
| | | Enabling DHCP |
| | | The dhclient Program |
| | | Running a DHCP Server |
| | Part VI: Appendixes |
| | | Appendix A. Command Reference and Configuration File Reference |
| | | Command Options |
| | | File- and Directory-Manipulation Commands |
| | | User and Permissions Management Commands |
| | | Common Shell Commands |
| | | System Utilities and Maintenance-Related Commands |
| | | Printer-Related Commands |
| | | Software Installation and Removal Commands |
| | | Common Configuration Files |
| | | Appendix B. Hardware Compatibility Lists |
| | | System Requirements |
| | | Supported Hardware |
| | | Video Cards Supported by X11 |
| | | Appendix C. Troubleshooting Installation and Boot Problems |
| | | Installation Problems |
| | | Boot Problems and Other Non-installation Problems |
| | | Appendix D. Sources for More Information |
| | | FreeBSD-Specific Resources |
| | | Other BSD-Related Resources |
| | | Other Internet Resources |
| | Index |