This book teaches the reader everything he/she needs to know in order to use FreeBSD to its full potential. It will show individuals how to use the same FreeBSD power that Yahoo!, the Internet Movie Database, and many other high profile internet sites depend on. Whether someone needs an enterprise class server, a small business server, or a dependable workstation, this book can be a very economical and powerful solution to your needs.
I. INTRODUCTION TO FREEBSD.1. What Is FreeBSD?
Why Use FreeBSD? What Can You Do with FreeBSD? A Brief History of FreeBSD and UNIX. The Design Philosophy of UNIX. FreeBSD Compared to Other Operating Systems. FreeBSD Mascot.2. Installing FreeBSD.
Checking Your Hardware. Creating Boot Disks. System Booting in to the Install Program. Introduction to the FreeBSD Sysinstall Program Navigating the Sysinstall Program. Creating Partitions and Assigning Mount Points. Selecting a Canned Distribution Set. Choose the Installation Media. Post-Installation. Exiting the Install and Rebooting the System. Booting FreeBSD for the First Time. Shutting Down FreeBSD.3. Advanced Installation Issues.
Backing Up Existing Filesystems. Nondestructive Hard Disk Partitioning with FIPS. Working with FIPS. Potential Problems with and Limitations of Dual Boot Systems. The FreeBSD Boot Manager. Booting FreeBSD from LILO. Alternate Installation Methods.
II. USING FREEBSD.4. Your First Session with FreeBSD.
FreeBSD Startup Process. The BIOS. The Bootstrap. The Kernel. Init. Logging In to FreeBSD. Starting the X-Windows System. Introduction to the Gnome Desktop Environment. Stopping the X-Windows System. Logging Out of FreeBSD. Shutting Down the FreeBSD System.5. Working with the Gnome Desktop Environment.
Window Managers. The Gnome Desktop Environment. Navigating the Desktop. The Gnome Panel. Working with Windows. Exploring the Gnome and X-Windows Applets. Managing Files and Directories with the Gnome File Manager. Getting Help in Gnome.6. Customizing the Gnome Desktop Environment.
Adding New Icons to the Desktop. Customizing the Gnome Panel. Adding and Removing Panels. Customizing the Gnome File Manager. Working with the Gnome Control Center. Customizing Sawfish Window Manager Options.7. Working with Applications.
Working with Text. Graphics and Images. StarOffice Office Suite. Multimedia. Networking Applications.8. Working with the Shell.
Introducing the Shell. Types of Shells Available. 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. @PARTHEAD III. ADMINISTERING FREEBSD.9. 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 User Filesystem Quotas.10. 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.11. 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.12. Customizing the Shell.
What Is a Shell? Adding Shells to the System and Making Them Available. Using Alternate Shells. Shell Initialization Files. Customizing Your Shell Environment. Shell and Environment Variables.13. Shell Programming.
A Simple Shell Program. Variables. Interacting with the User. Arithmetic in Shell Programs. Loops. Conditional Statements. Exit Status. Functions. File Descriptors. Debugging Shell Scripts. Advanced Features of Korn Shell Scripting.14. Performance Monitoring, Process Control, and Job Automation.
Performance Monitoring with top. top Output Explained. Process Monitoring with ps. ps Output Explained. Terminating Misbehaving Processes. Making Processes “Nice”. Introduction to Job Automation. The cron Daemon. Creating Jobs to Run One Time with the at Command. Controlling Access to the cron and at Commands.15. Installing Additional Software.
Introduction to Packages. Installing Packages. Removing Packages. Updating Packages. Introduction to Ports. The FreeBSD Ports Tree. Installing Ports. Removing Installed Ports. Upgrading a Port. Making Sure that Your. Fresh Ports.16. Printing.
lpd and the Print Spooler. Kernel, Device, and Communications Mode. Configuration. Creating the Spool Directory. Filters. Conversion Filters. Configuring /etc/printcap. Enabling lpd. Basic Command Line Printing. Printing from X-Windows. Printing in StarOffice. Checking Status of Print Jobs. Removing Jobs from the Queue. Controlling Printers. Basic Network Printing. Troubleshooting.17. Kernel Configuration.
The Role of the Kernel. 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 (if Necessary). Recovering if Something Goes Wrong.18. Keeping Up to Date with FreeBSD.
Tracking the FreeBSD Sources. What Is make world? Things to Consider Before Making the World. Pre-make world Tasks. Rebuilding Your System from Sources. Using mergemaster to Check for Changed Configuration Files. Rebooting After the Upgrade.19. Understanding Hard Disks and Filesystems.
IDE/ATA Access Modes. SCSI Disks. Understanding Hard Disk Geometry. Partitioning a Hard Disk. Creating the Disk Labels. Making the Filesystem Available for Use.20. FreeBSD Survival Guide.
Migrating to FreeBSD. “Do's” and “Don'ts” (Common Gotchas). Performance Tuning.21. Introduction to Perl Programming.
What Is Perl? Perl in FreeBSD. Fundamentals of Perl Scripting. A Simple Perl Script. Advanced Perl Techniques. Useful Perl Resources.
IV. FREEBSD NETWORKING.22. Introduction to Networking.
Introduction to Networking. Network Topologies. Network Components. Network Protocols. TCP/IP. IP Addresses. Subnets and the Network Mask. Routing. Host Names and Domain Names. DHCP.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 Various Other Network Configuration Files.24. Connecting to the Internet with PPP.
Choosing an ISP. Gathering Needed Information. User PPP versus Kernel PPP. Configuring Kernel PPP. User PPP. Troubleshooting PPP. Final Thoughts.25. Configuring E-mail Services.
Introduction to SMTP. Mail Transfer Agents (MTAs) and Mail User Agents (MUAs). Configuring Basic E-mail Services with Sendmail. Notes on Relaying. Introduction to POP3. Configuring a POP3 Server with qpopper. Configuring an IMAP Server with IMAP-UW. E-mail for Standalone Workstations. A Look at Some Sendmail Replacements.26. Configuring a Web Server.
Introduction to the HTTP Protocol. Obtaining and Installing Apache. Starting and Stopping the HTTP Daemon. Basic Access Control with Apache. Virtual Hosting. Introduction to Apache Modules. Server-Side Includes. Introduction to CGI.27. Configuring an FTP Server.
Introduction to the FTP Protocol. Overview of the FTP Directory Structure. Configuring the FTP Server. Controlling FTP Access. Allowing Anonymous FTP Access. Virtual Hosting. Using Alternate FTP Servers.28. Configuring an Internet Gateway.
What Is a Router? Configuring a NAT Gateway in FreeBSD. Enabling NAT. Configuring and Enabling natd. Configuring Wireless Internet Access. Routing Between Three or More Networks. Dynamic Routing.29. Network Security.
Security Models. Password Policies. Problems with Cleartext Services. Securing Terminal Traffic (OpenSSH). Securing E-mail Services (POP3 and IMAP). Securing FTP. Securing Apache. System Security Profiles and Kernel Security (securelevel). Using a Firewall. Preventing Intrusions and Compromises. Denial of Service (DOS) Attacks. Physical Security. Other Security Resources.30. The Domain Name Server.
Introduction to BIND. Enabling the Name Server Daemon. BIND Configuration File (named.conf). Creating a Zone File. Configuring a Caching Name Server.31. The Network Filesystem.(NFS).
Introduction to NFS. Configuring an NFS Server. Configuring an NFS Client. Auto-Mount Daemon (amd).32. File and Print Sharing with Microsoft Windows.
Introduction to Samba. SMB/CIFS Explained. Installing and Configuring Samba. Other Samba Components. Future Samba Development. smbfs Filesystem.33. DHCP.
How DHCP Works. Advantages of DHCP Over Static IP Addresses. Kernel Configuration for DHCP. Enabling DHCP. dhclient Program. DHCP Server Daemon. dhcpd Configuration File.
V. X-WINDOWS.34. Advanced X-Windows Configuration.
Upgrading from 3.3.6 to 4.x. Using SuperProbe. Configuring X-Windows with the xf86config Script. Understanding the XF86Config File. Testing the X-Windows Setup. Your Personal .xinitrc File. Working with Fonts. Using Remote X-Windows Clients. Xdm.
VI. APPENDIXES.Appendix A. Command Reference and Configuration File Reference.
System Requirements. Supported Hardware. Video Cards Supported by X-Windows.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.
Page 5 of the book incorrectly states that certain third-party software packages are contained on Disc 2. Due to the decision to include a FreeBSD-current snapshot, the third-party software applications promised in the book are not on the CD-ROM. Instead, Disc 1 contains the first disc of the FreeBSD 4.4-STABLE distribution and Disc 2 contains the first disc of a pre-release snapshot of FreeBSD 5.0-CURRENT.
The second CD-ROM in FreeBSD Unleashed contains a pre-release snapshot of FreeBSD-current. You may encounter some problems 1) setting up FreeBSD from Disc 2, and 2) using FreeBSD after installing from Disc 2.
Because FreeBSD 5.0-CURRENT is changing on a daily basis, you may want to consider upgrading from FreeBSD 4.4-STABLE to 5.0-CURRENT using the following method.
NOTE: The above procedure works best if you have a really good connection to the internet, such as a DSL line, a cable modem, or you work at a business that has a T1 or better line.