<!--
     $FreeBSD$
-->

<preface id="book-preface">
  <title>Preface</title>
  
  <bridgehead id="preface-audience" renderas=sect1>Intended
  Audience</bridgehead>

  <para>The FreeBSD newcomer will find that the first section of this
    book guides the user through the FreeBSD installation process, and
    gently introduces the concepts and conventions that underpin Unix.
    Working through this section requires little more than the desire
    to explore, and the ability to take on board new concepts as they
    are introduced.</para>

  <para>Once you have travelled this far, the second, far larger,
    section of the Handbook is a comprehensive reference to all manner
    of topics of interest to FreeBSD system administrators.  Some of
    these chapters may recommend that you do some prior reading, and
    this is noted in the synopsis at the beginning of each
    chapter.</para>

  <para>For a list of additional sources of information, please see <xref
    linkend="bibliography">.</para>

  <bridgehead id="preface-changes" renderas=sect1>Changes from the
  First Edition</bridgehead>

    <para>This second edition is the culmination of over two years of
      work by the dedicated members of the FreeBSD Documentation
      Project.  The following are the major changes in this new
      edition:</para>

<!-- Talk a little about justification and other stylsheet changes? -->

    <itemizedlist>
      <listitem>
	<para>A complete Index has been added.</para>
      </listitem>
      <listitem>
	<para>All ASCII figures have been replaced by graphical diagrams.</para>
      </listitem>
      <listitem>
	<para>A standard synopsis has been added to each chapter to
	give a quick summary of what information the chapter contains,
	and what the reader is expected to know.</para>
      </listitem>
      <listitem>
	<para>The content has been logically reorganized into three
	parts: <quote>Getting Started</quote>, <quote>System Administration</quote>, and
	<quote>Appendices</quote>.</para>
      </listitem>
      <listitem>
	<para>Chapter 2 (<quote>Installing FreeBSD</quote>) was completely
	rewritten with many screenshots to make it much easier for new
	users to grasp the text.</para>
      </listitem>
      <listitem>
	<para>Chapter 3 (<quote>Unix Basics</quote>) has been expanded to contain
	additional information about processes, daemons, and
	signals.</para>
      </listitem>
      <listitem>
	<para>Chapter 4 (<quote>Installing Applications</quote>) has been expanded
	to contain additional information about binary package
	management.</para>
      </listitem>
      <listitem>
	<para>Chapter 5 (<quote>The X Window System</quote>) has been completely
 	rewritten with an emphasis on using modern desktop
	technologies such as <application>KDE</application> and <application>GNOME</application> on XFree86 4.X.</para>
      </listitem>
      <listitem>
	<para>Chapter 7 (<quote>The FreeBSD Booting Process</quote>) has been
	expanded.</para>
      </listitem>
      <listitem>
        <para>Chapter 12 (<quote>Storage</quote>) has been written from what used
        to be two separate chapters on <quote>Disks</quote> and <quote>Backups</quote>.  We feel
        that the topics are easier to comprehend when presented as a
        single chapter.  A section on RAID (both hardware and
        software) has also been added.</para>
      </listitem>
      <listitem>
	<para>Chapter 15 (<quote>Serial Communications</quote>) has been completely
	reorganized and updated for FreeBSD 4.X/5.X.</para>
      </listitem>
      <listitem>
	<para>Chapter 16 (<quote>PPP and SLIP</quote>) has been substantially
	updated.</para>
      </listitem>
      <listitem>
	<para>Many new sections have been added to Chapter 17
	(<quote>Advanced Networking</quote>).</para>
      </listitem>
      <listitem>
	<para>Chapter 18 (<quote>Electronic Mail</quote>) has been expanded to
	  include more information about configuring
	  <application>sendmail</application>.</para>
      </listitem>
      <listitem>
	<para>Chapter 20 (<quote>Linux Compatibility</quote>) has been expanded to
	  include information about installing
	  <application>Oracle</application> and
	  <application>SAP/R3</application>.</para>
      </listitem>
      <listitem>
	<para>The following new topics are covered in this second
	edition:</para>
	<itemizedlist>
	  <listitem>
	    <para>Configuration and Tuning (Chapter 6).</para>
	  </listitem>
	  <listitem>
	    <para>Sound (Chapter 14)</para>
	  </listitem>
	</itemizedlist>
      </listitem>
    </itemizedlist>

  <bridgehead id="preface-overview" renderas=sect1>Organization of This
  Book</bridgehead>

  <para>This book is split into three logically distinct sections.
    The first section, <emphasis>Getting Started</emphasis>, covers
    the installation and basic usage of FreeBSD.  It is expected that
    the reader will follow these chapters in sequence, possibly
    skipping chapters covering familiar topics.  The second section,
    <emphasis>System Administration</emphasis>, covers a broad
    collection of subjects that are of interest to more advanced
    FreeBSD users.  Each section begins with a succinct synopsis that
    describes what the chapter covers and what the reader is expected
    to already know.  This is meant to allow the casual reader to skip
    around to find chapters of interest.  The third section contains
    appendices of reference information.</para>

  <variablelist>
    <varlistentry>
      <term><emphasis>Chapter 1, Introduction</emphasis></term>
      <listitem>
	<para>Introduces FreeBSD to a new user.  It describes the
	history of the FreeBSD Project, its goals and development model.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 2, Installation</emphasis></term>
      <listitem>
	<para>Walks a user through the entire installation process.
	Some advanced installation topics, such as installing through
	a serial console, are also covered.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 3, Unix Basics</emphasis></term>
      <listitem>
	<para>Covers the basic commands and functionality of the
	FreeBSD operating system.  If you are familiar with Linux or
	another flavor of Unix then you can probably skip this
	chapter.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 4, Installing Applications</emphasis></term>
      <listitem>
	<para>Covers the installation of third-party software with
	both FreeBSD's innovative <quote>Ports Collection</quote> and standard
	binary packages.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 5, The X Window System</emphasis></term>
      <listitem>
	<para>Describes the X Window System in general and using
	XFree86 on FreeBSD in particular.  Also describes common
	desktop environments such as <application>KDE</application> and <application>GNOME</application>.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 6, Configuration and Tuning</emphasis></term>
      <listitem>
	<para>Describes the parameters available for system
	administrators to tune a FreeBSD system for optimum
	performance.  Also describes the various configuration files
	used in FreeBSD and where to find them.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 7, Booting Process</emphasis></term>
      <listitem>
	<para>Describes the FreeBSD boot process and explains
	how to control this process with configuration options.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 8, Users and Basic Account
      Management</emphasis></term>
      <listitem>
	<para>Describes the creation and manipulation of user
	  accounts.  Also discusses resource limitations that can be
	  set on users and other account management tasks.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 9, Configuring the FreeBSD
      Kernel</emphasis></term>
      <listitem>
	<para>Explains why you might need to configure a new kernel
	and provides detailed instructions for configuring, building,
	and installing a custom kernel.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 10, Security</emphasis></term>
      <listitem>
	<para>Describes many different tools available to help keep your
	FreeBSD system secure, including Kerberos, IPsec, OpenSSH, and
	network firewalls.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 11, Printing</emphasis></term>
      <listitem>
	<para>Describes managing printers on FreeBSD, including
	information about banner pages, printer accounting, and
	initial setup.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 12, Storage</emphasis></term>
      <listitem>
	<para>Describes how to manage storage media and filesystems
  	  with FreeBSD.  This includes physical disks, RAID arrays,
  	  optical and tape media, memory-backed disks, and network
  	  filesystems.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 13, Localization</emphasis></term>
      <listitem>
	<para>Describes how to use FreeBSD in languages other than
	English.  Covers both system and application level
	localization.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 14, Sound</emphasis></term>
      <listitem>
	<para>Shows how to setup sound support for your system.  Also
	describes some sample audio applications.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 15, Serial Communications</emphasis></term>
      <listitem>
	<para>Explains how to connect terminals and modems to your
  	FreeBSD system for both dial in and dial out connections.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 16, PPP and SLIP</emphasis></term>
      <listitem>
	<para>Describes how to use PPP, SLIP, or PPP over Ethernet to
	connect to remote systems with FreeBSD.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 17, Advanced Networking</emphasis></term>
      <listitem>
	<para>Describes many networking topics, including sharing an
	Internet connection with other computers on your LAN, using
	network filesystems, sharing account information via NIS,
	setting up a name server, and much more.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 18, Electronic Mail</emphasis></term>
      <listitem>
	<para>Explains the different components of an email server and
	dives into simple configuration topics for the most popular
	mail server software:
	<application>sendmail</application>.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 19, The Cutting Edge</emphasis></term>
      <listitem>
	<para>Explains the differences between FreeBSD-STABLE,
	FreeBSD-CURRENT, and FreeBSD releases.  Describes which users
	would benefit from tracking a development system and outlines
	that process.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Chapter 20, Linux Binary Compatibility</emphasis></term>
      <listitem>
	<para>Describes the Linux compatibility features of FreeBSD.
	Also provides detailed installation instructions for many
	popular Linux applications such as <application>Oracle</application>, <application>SAP/R3</application>, and
	<application>Mathematica</application>.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Appendix A, Obtaining FreeBSD </emphasis></term>
      <listitem>
	<para>Lists different sources for obtaining FreeBSD media on CDROM
	or DVD as well as different sites on the Internet that allow
	you to download and install FreeBSD.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Appendix B, Bibliography </emphasis></term>
      <listitem>
	<para>This book touches on many different subjects that may
	leave you hungry for a more detailed explanation.  The
	bibliography lists many excellent books that are referenced in
	the text.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Appendix C, Resources on the Internet</emphasis></term>
      <listitem>
	<para>Describes the many forums available for FreeBSD users to
	post questions and engage in technical conversations about
	FreeBSD.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><emphasis>Appendix D, PGP Keys</emphasis></term>
      <listitem>
	<para>Lists the PGP fingerprints of several FreeBSD Developers.</para>
      </listitem>
    </varlistentry>
  </variablelist>

  <bridgehead id="preface-conv" renderas=sect1>Conventions used
  in this book</bridgehead>

    <para>To provide a consistent and easy to read text, several
    conventions are followed throughout the book.</para>

  <bridgehead id="preface-conv-typographic" renderas=sect2>Typographic
  Conventions</bridgehead>

  <variablelist>
    <varlistentry>
      <term><emphasis>Italic</emphasis></term>
      <listitem>
	<para>An <emphasis>italic</emphasis> font is used for filenames, URLs,
	  emphasized text, and the first usage of technical terms.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><varname>Monospace</varname></term>
      <listitem>
	  <para>A <varname>monospaced</varname> font is
	  used for error messages, commands, environment variables,
	  names of ports, hostnames, user names, group names, device
	  names, variables, and code fragments.</para>
      </listitem>
    </varlistentry>
    <varlistentry>
      <term><application>Bold</application></term>
      <listitem>
	<para>A <application>bold</application> font is used for
	applications, commands, and keys.</para>
      </listitem>
    </varlistentry>
  </variablelist>

<!-- Var list -->
  <bridgehead id="preface-conv-commands"
  renderas=sect2>User Input</bridgehead>

  <para>Keys are rendered in <keycap>bold</keycap> to stand out from
    other text.  Key combinations that are meant to be typed
    simultaneously are rendered with `<literal>+</literal>' between
    the keys, such as:</para>

  <para>
    <keycombo action="simul">
      <keycap>Ctrl</keycap>
      <keycap>Alt</keycap>
      <keycap>Del</keycap>
    </keycombo>
  </para>

  <para>Keys that are meant to be typed in sequence will be separated with
    commas, for example:</para>

  <para>
    <keycombo action="simul">
      <keycap>Ctrl</keycap>
      <keycap>X</keycap>
    </keycombo>,
    <keycombo action="simul">
      <keycap>Ctrl</keycap>
      <keycap>S</keycap>
    </keycombo>
  </para>

  <para>Would mean that the user is expected to type the
    <keycap>Ctrl</keycap> and <keycap>X</keycap> keys simultaneously
    and then to type the <keycap>Ctrl</keycap> and <keycap>S</keycap>
    keys simultaneously.</para>

<!-- How to type in key stokes, etc.. -->
  <bridgehead id="preface-conv-examples"
  renderas=sect2>Examples</bridgehead>

  <para>Examples starting with <devicename>E:\&gt;</devicename>
  indicate a MS-DOS command.  Unless otherwise noted, these commands
  may be executed from a <quote>Command Prompt</quote> window in a modern Microsoft
  Windows environment.</para>

  <screen><prompt>E:\&gt;</prompt> <userinput>tools\fdimage floppies\kern.flp A:</userinput></screen>

  <para>Examples starting with &prompt.root; indicate a command that
    must be invoked as the superuser in FreeBSD.  You can login as
    <username>root</username> to type the command, or login as your
    normal account and use &man.su.1; to gain
    superuser privileges.</para>

  <screen>&prompt.root; <userinput>dd if=kern.flp of=/dev/fd0</userinput></screen>

  <para>Examples starting with &prompt.user; indicate a command that
    should be invoked from a normal user account.  Unless otherwise
    noted, C-shell syntax is used for setting environment variables
    and other shell commands.</para>

  <screen>&prompt.user; <userinput>top</userinput></screen>

  <bridgehead id="preface-acknowledgements"
  renderas=sect1>Acknowledgments</bridgehead>

  <para>The book you are holding represents the efforts of many hundreds of
    people around the world.  Whether they sent in fixes for typos, or
    submitted complete chapters, all the contributions have been
    useful.</para>

  <para>Several companies have supported the development of this
    document by paying authors to work on it full-time, paying for
    publication, etc.  In particular, BSDi (subsequently acquired by
    <ulink url="http://www.windriver.com">Wind River Systems</ulink>)
    paid members of the FreeBSD Documentation Project to work on
    improving this book full time leading up to the publication of the
    first printed edition in March 2000 (ISBN 1-57176-241-8).  Wind
    River Systems then paid several additional authors to make a
    number of improvements to the print-output infrastructure and to add
    additional chapters to the text.  This work culminated in the
    publication of the second printed edition in November 2001 (ISBN
    1-57176-303-1).</para>

</preface>

<!-- 
     Local Variables:
     mode: sgml
     sgml-declaration: "../chapter.decl"
     sgml-indent-data: t
     sgml-omittag: nil
     sgml-always-quote-attributes: t
     sgml-parent-document: ("../book.sgml" "book" "preface")
     End:
-->
