doc/en_US.ISO8859-1/books/handbook/install/chapter.sgml
2004-12-21 09:51:17 +00:00

5596 lines
206 KiB
Text

<!--
The FreeBSD Documentation Project
$FreeBSD$
-->
<chapter id="install">
<chapterinfo>
<authorgroup>
<author>
<firstname>Jim</firstname>
<surname>Mock</surname>
<contrib>Restructured, reorganized, and parts
rewritten by </contrib>
</author>
</authorgroup>
<authorgroup>
<author>
<firstname>Randy</firstname>
<surname>Pratt</surname>
<contrib>The sysinstall walkthrough, screenshots, and general
copy by </contrib>
</author>
</authorgroup>
<!-- January 2000 -->
</chapterinfo>
<title>Installing FreeBSD</title>
<sect1 id="install-synopsis">
<title>Synopsis</title>
<indexterm><primary>installation</primary></indexterm>
<para>FreeBSD is provided with a text-based, easy to use installation
program called <application>sysinstall</application>. This is the
default installation program for FreeBSD, although vendors are free to
provide their own installation suite if they wish. This chapter
describes how to use <application>sysinstall</application> to install
FreeBSD.</para>
<para>After reading this chapter, you will know:</para>
<itemizedlist>
<listitem>
<para>How to create the FreeBSD installation disks.</para>
</listitem>
<listitem>
<para>How FreeBSD refers to, and subdivides, your hard disks.</para>
</listitem>
<listitem>
<para>How to start <application>sysinstall</application>.</para>
</listitem>
<listitem>
<para>The questions <application>sysinstall</application> will ask
you, what they mean, and how to answer them.</para>
</listitem>
</itemizedlist>
<para>Before reading this chapter, you should:</para>
<itemizedlist>
<listitem>
<para>Read the supported hardware list that shipped with the version
of FreeBSD you are installing, and verify that your hardware is
supported.</para>
</listitem>
</itemizedlist>
<note>
<para>In general, these installation instructions are written
for &i386; (<quote>PC compatible</quote>) architecture
computers. Where applicable, instructions specific to other
platforms (for example, Alpha) will be listed. Although this
guide is kept as up to date as possible, you may find minor
differences between the installer and what is shown here. It is
suggested that you use this chapter as a general guide rather
than a literal installation manual.</para>
</note>
</sect1>
<sect1 id="install-pre">
<title>Pre-installation Tasks</title>
<sect2 id="install-inventory">
<title>Inventory Your Computer</title>
<para>Before installing FreeBSD you should attempt to inventory the
components in your computer. The FreeBSD installation routines will
show you the components (hard disks, network cards, CDROM drives, and
so forth) with their model number and manufacturer. FreeBSD will also
attempt to determine the correct configuration for these devices,
which includes information about IRQ and IO port usage. Due to the
vagaries of PC hardware this process is not always completely
successful, and you may need to correct FreeBSD's determination of
your configuration.</para>
<para>If you already have another operating system installed, such as
&windows; or Linux, it is a good idea to use the facilities provided
by those operating systems to see how your hardware is already
configured. If you are not sure what settings an expansion
card is using, you may find it printed on the card itself. Popular IRQ
numbers are 3, 5, and 7, and IO port addresses are normally written as
hexadecimal numbers, such as 0x330.</para>
<para>We recommend you print or write down this information before
installing FreeBSD. It may help to use a table, like this:</para>
<table pgwide="1" frame="none">
<title>Sample Device Inventory</title>
<tgroup cols="4">
<colspec colwidth="2*">
<colspec colwidth="1*">
<colspec colwidth="1*">
<colspec colwidth="4*">
<thead>
<row>
<entry>Device Name</entry>
<entry>IRQ</entry>
<entry>IO port(s)</entry>
<entry>Notes</entry>
</row>
</thead>
<tbody>
<row>
<entry>First hard disk</entry>
<entry>N/A</entry>
<entry>N/A</entry>
<entry>40&nbsp;GB, made by Seagate, first IDE master</entry>
</row>
<row>
<entry>CDROM</entry>
<entry>N/A</entry>
<entry>N/A</entry>
<entry>First IDE slave</entry>
</row>
<row>
<entry>Second hard disk</entry>
<entry>N/A</entry>
<entry>N/A</entry>
<entry>20&nbsp;GB, made by IBM, second IDE master</entry>
</row>
<row>
<entry>First IDE controller</entry>
<entry>14</entry>
<entry>0x1f0</entry>
<entry></entry>
</row>
<row>
<entry>Network card</entry>
<entry>N/A</entry>
<entry>N/A</entry>
<entry>&intel; 10/100</entry>
</row>
<row>
<entry>Modem</entry>
<entry>N/A</entry>
<entry>N/A</entry>
<entry>&tm.3com; 56K faxmodem, on COM1</entry>
</row>
<row>
<entry>&hellip;</entry>
</row>
</tbody>
</tgroup>
</table>
</sect2>
<sect2>
<title>Backup Your Data</title>
<para>If the computer you will be installing FreeBSD on contains
valuable data, then ensure you have it backed up, and that you have
tested the backups before installing FreeBSD. The FreeBSD
installation routine will prompt you before writing any
data to your disk, but once that process has started it cannot be
undone.</para>
</sect2>
<sect2 id="install-where">
<title>Decide Where to Install FreeBSD</title>
<para>If you want FreeBSD to use your entire hard disk, then there is nothing
more to concern yourself with at this point &mdash; you can skip this
section.</para>
<para>However, if you need FreeBSD to co-exist with other operating
systems then you need to have a rough understanding of how data is
laid out on the disk, and how this affects you.</para>
<sect3 id="install-where-i386">
<title>Disk Layouts for the &i386;</title>
<para>A PC disk can be divided into discrete chunks. These chunks are
called <firstterm>partitions</firstterm>. By design, the PC only
supports four partitions per disk. These partitions are called
<firstterm>primary partitions</firstterm>. To work around this
limitation and allow more than four partitions, a new partition type
was created, the <firstterm>extended partition</firstterm>. A disk
may contain only one extended partition. Special partitions, called
<firstterm>logical partitions</firstterm>, can be created inside this
extended partition.</para>
<para>Each partition has a <firstterm>partition ID</firstterm>, which is
a number used to identify the type of data on the partition. FreeBSD
partitions have the partition ID of <literal>165</literal>.</para>
<para>In general, each operating system that you use will identify
partitions in a particular way. For example, DOS, and its
descendants, like &windows;, assign each primary and logical partition a
<firstterm>drive letter</firstterm>, starting with
<devicename>C:</devicename>.</para>
<para>FreeBSD must be installed into a primary partition. FreeBSD can
keep all its data, including any files that you create, on this one
partition. However, if you have multiple disks, then you can create a
FreeBSD partition on all, or some, of them. When you install FreeBSD,
you must have one partition available. This might be a blank
partition that you have prepared, or it might be an existing partition
that contains data that you no longer care about.</para>
<para>If you are already using all the partitions on all your disks, then
you will have to free one of them for FreeBSD using the tools
provided by the other operating systems you use (e.g.,
<command>fdisk</command> on DOS or &windows;).</para>
<para>If you have a spare partition then you can use that. However, you
may need to shrink one or more of your existing partitions
first.</para>
<para>A minimal installation of FreeBSD takes as little as 100&nbsp;MB of disk
space. However, that is a <emphasis>very</emphasis> minimal install,
leaving almost no space for your own files. A more realistic minimum
is 250&nbsp;MB without a graphical environment, and 350&nbsp;MB or more if you
want a graphical user interface. If you intend to install a lot of
third party software as well, then you will need more space.</para>
<para>You can use a commercial tool such as <application>&partitionmagic;</application>
to resize your partitions to make space for
FreeBSD. The <filename>tools</filename> directory on the CDROM
contains two free software tools which can carry out this task, namely
<application>FIPS</application> and
<application>PResizer</application>. Documentation for both
of these is available in the same directory.
<application>FIPS</application>,
<application>PResizer</application>, and
<application>&partitionmagic;</application> can resize
<acronym>FAT16</acronym> and <acronym>FAT32</acronym>
partitions &mdash; used in &ms-dos; through &windows; ME.
<application>&partitionmagic;</application> is the only known
application that can resize <acronym>NTFS</acronym>.</para>
<warning>
<para>Incorrect use of these tools can delete the data on your disk.
Be sure that you have recent, working backups before using
them.</para>
</warning>
<example>
<title>Using an Existing Partition Unchanged</title>
<para>Suppose that you have a computer with a single 4&nbsp;GB disk that
already has a version of &windows; installed, and you have split the
disk into two drive letters, <devicename>C:</devicename> and
<devicename>D:</devicename>, each of which is 2&nbsp;GB in size. You have
1&nbsp;GB of data on <devicename>C:</devicename>, and 0.5&nbsp;GB of data on
<devicename>D:</devicename>.</para>
<para>This means that your disk has two partitions on it, one per
drive letter. You can copy all your existing data from
<devicename>D:</devicename> to <devicename>C:</devicename>, which
will free up the second partition, ready for FreeBSD.</para>
</example>
<example>
<title>Shrinking an Existing Partition</title>
<para>Suppose that you have a computer with a single 4&nbsp;GB disk that
already has a version of &windows; installed. When you installed
&windows; you created one large partition, giving you a
<devicename>C:</devicename> drive that is 4&nbsp;GB in size. You are
currently using 1.5&nbsp;GB of space, and want FreeBSD to have 2&nbsp;GB of
space.</para>
<para>In order to install FreeBSD you will need to either:</para>
<orderedlist>
<listitem>
<para>Backup your &windows; data, and then reinstall &windows;,
asking for a 2&nbsp;GB partition at install time.</para>
</listitem>
<listitem>
<para>Use one of the tools such as <application>&partitionmagic;</application>,
described above, to shrink your &windows;
partition.</para>
</listitem>
</orderedlist>
</example>
</sect3>
<sect3>
<title>Disk Layouts for the Alpha</title>
<indexterm><primary>Alpha</primary></indexterm>
<para>You will need a dedicated disk for FreeBSD on the
Alpha. It is not possible to share a disk with another
operating system at this time. Depending on the specific
Alpha machine you have, this disk can either be a SCSI disk
or an IDE disk, as long as your machine is capable of
booting from it.</para>
<para>Following the conventions of the Digital / Compaq
manuals all SRM input is shown in uppercase. SRM is case
insensitive.</para>
<para>To find the names and types of disks in your machine, use
the <literal>SHOW DEVICE</literal> command from the SRM
console prompt:</para>
<screen>&gt;&gt;&gt;<userinput>SHOW DEVICE</userinput>
dka0.0.0.4.0 DKA0 TOSHIBA CD-ROM XM-57 3476
dkc0.0.0.1009.0 DKC0 RZ1BB-BS 0658
dkc100.1.0.1009.0 DKC100 SEAGATE ST34501W 0015
dva0.0.0.0.1 DVA0
ewa0.0.0.3.0 EWA0 00-00-F8-75-6D-01
pkc0.7.0.1009.0 PKC0 SCSI Bus ID 7 5.27
pqa0.0.0.4.0 PQA0 PCI EIDE
pqb0.0.1.4.0 PQB0 PCI EIDE</screen>
<para>This example is from a Digital Personal Workstation
433au and shows three disks attached to the machine. The
first is a CDROM drive called <devicename>DKA0</devicename> and
the other two are disks and are called
<devicename>DKC0</devicename> and
<devicename>DKC100</devicename> respectively.</para>
<para>Disks with names of the form <devicename>DKx</devicename>
are SCSI disks. For example <devicename>DKA100</devicename>
refers to a SCSI disk with SCSI target ID 1 on the first SCSI bus (A),
whereas <devicename>DKC300</devicename> refers to a SCSI disk
with SCSI ID 3 on the third SCSI bus (C). Devicename <devicename>
PKx</devicename> refers to the SCSI host bus adapter. As
seen in the <literal>SHOW DEVICE</literal> output SCSI
CDROM drives are treated as any other SCSI hard disk drive.</para>
<para>IDE disks have names similar to <devicename>DQx</devicename>,
while <devicename>PQx</devicename> is the associated IDE
controller.</para>
</sect3>
</sect2>
<sect2>
<title>Collect Your Network Configuration Details</title>
<para>If you intend to connect to a network as part of your FreeBSD
installation (for example, if you will be installing from an FTP
site or an
NFS server), then you need to know your network configuration. You
will be prompted for this information during the installation so that
FreeBSD can connect to the network to complete the install.</para>
<sect3>
<title>Connecting to an Ethernet Network or Cable/DSL Modem</title>
<para>If you connect to an Ethernet network, or you have an Internet
connection using an Ethernet adapter via cable or DSL, then you will need the following
information:</para>
<orderedlist>
<listitem>
<para>IP address</para>
</listitem>
<listitem>
<para>IP address of the default gateway</para>
</listitem>
<listitem>
<para>Hostname</para>
</listitem>
<listitem>
<para>DNS server IP addresses</para>
</listitem>
<listitem>
<para>Subnet Mask</para>
</listitem>
</orderedlist>
<para>If you do not know this information, then ask your system
administrator or service provider. They may say that this
information is assigned automatically, using
<firstterm>DHCP</firstterm>. If so, make a note of this.</para>
</sect3>
<sect3>
<title>Connecting Using a Modem</title>
<para>If you dial up to an ISP using a regular modem then you can
still install FreeBSD over the Internet, it will just take a very
long time.</para>
<para>You will need to know:</para>
<orderedlist>
<listitem>
<para>The phone number to dial for your ISP</para>
</listitem>
<listitem>
<para>The COM: port your modem is connected to</para>
</listitem>
<listitem>
<para>The username and password for your ISP account</para>
</listitem>
</orderedlist>
</sect3>
</sect2>
<sect2>
<title>Check for FreeBSD Errata</title>
<para>Although the FreeBSD project strives to ensure that each release
of FreeBSD is as stable as possible, bugs do occasionally creep into
the process. On very rare occasions those bugs affect the
installation process. As these problems are discovered and fixed, they
are noted in the <ulink url="http://www.FreeBSD.org/releases/&rel.current;R/errata.html">FreeBSD Errata</ulink>, which is found on the FreeBSD web site. You
should check the errata before installing to make sure that there are
no late-breaking problems which you should be aware of.</para>
<para>Information about all the releases, including the errata for each
release, can be found on the
<ulink
url="&url.base;/releases/index.html">release
information</ulink> section of the
<ulink
url="&url.base;/index.html">FreeBSD web site</ulink>.</para>
</sect2>
<sect2>
<title>Obtain the FreeBSD Installation Files</title>
<para>The FreeBSD installation process can install FreeBSD from files
located in any of the following places:</para>
<itemizedlist>
<title>Local Media</title>
<listitem>
<para>A CDROM or DVD</para>
</listitem>
<listitem>
<para>A DOS partition on the same computer</para>
</listitem>
<listitem>
<para>A SCSI or QIC tape</para>
</listitem>
<listitem>
<para>Floppy disks</para>
</listitem>
</itemizedlist>
<itemizedlist>
<title>Network</title>
<listitem>
<para>An FTP site, going through a firewall, or using an HTTP proxy,
as necessary</para>
</listitem>
<listitem>
<para>An NFS server</para>
</listitem>
<listitem>
<para>A dedicated parallel or serial connection</para>
</listitem>
</itemizedlist>
<para>If you have purchased FreeBSD on CD or DVD then you already have
everything you need, and should proceed to the next section
(<xref linkend="install-floppies">).</para>
<para>If you have not obtained the FreeBSD installation files you should
skip ahead to <xref linkend="install-diff-media"> which explains how
to prepare to install FreeBSD from any of the above. After reading
that section, you should come back here, and read on to
<xref linkend="install-floppies">.</para>
</sect2>
<sect2 id="install-floppies">
<title>Prepare the Boot Media</title>
<para>The FreeBSD installation process is started by booting your
computer into the FreeBSD installer&mdash;it is not a program you run
within another operating system. Your computer normally boots using
the operating system installed on your hard disk, but it can also be
configured to use a <quote>bootable</quote> floppy disk.
Most modern computers can also
boot from a CDROM in the CDROM drive.</para>
<tip>
<para>If you have FreeBSD on CDROM or DVD (either one you purchased
or you prepared yourself), and your computer allows you to boot from
the CDROM or DVD (typically a BIOS option called <quote>Boot
Order</quote> or similar), then you can skip this section. The
FreeBSD CDROM and DVD images are bootable and can be used to install
FreeBSD without any other special preparation.</para>
</tip>
<para>To create boot floppy images, follow these steps:</para>
<procedure>
<step>
<title>Acquire the Boot Floppy Images</title>
<para>The boot disks are available on your installation media
in the <filename>floppies/</filename> directory, and
can also be downloaded from the floppies directory, <literal>ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/<replaceable>&lt;arch&gt;</replaceable>/<replaceable>&lt;version&gt;</replaceable>-RELEASE/floppies/</literal>.
Replace <replaceable>&lt;arch&gt;</replaceable> and
<replaceable>&lt;version&gt;</replaceable>
with the architecture and the version number
which you want to install, respectively.
For example, the boot floppy images for
&os;&nbsp;&rel.current;-RELEASE for &i386; are available
from <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel.current;-RELEASE/floppies/"></ulink>.</para>
<para>The floppy images have a <filename>.flp</filename> extension.
The <filename>floppies/</filename> directory contains a number of
different images, and the ones you will need to use depends on the
version of FreeBSD you are installing, and in some cases, the
hardware you are installing to. If you are installing
FreeBSD&nbsp;4.X in most cases you will just need
two files, <filename>kern.flp</filename> and
<filename>mfsroot.flp</filename>. If you are
installing FreeBSD&nbsp;5.X in most cases you will need three
floppies, <filename>boot.flp</filename>,
<filename>kern1.flp</filename>, and
<filename>kern2.flp</filename>. Check
<filename>README.TXT</filename> in the same directory for the
most up to date information about these floppy images.</para>
<note><para>Additional device drivers may
be necessary for 5.X systems older than &os;&nbsp;5.3.
These drivers are provided on the
<filename>drivers.flp</filename> image.</para></note>
<important>
<para>Your FTP program must use <emphasis>binary mode</emphasis>
to download these disk images. Some web browsers have been
known to use <emphasis>text</emphasis> (or
<emphasis>ASCII</emphasis>) mode, which will be apparent if you
cannot boot from the disks.</para>
</important>
</step>
<step>
<title>Prepare the Floppy Disks</title>
<para>You must prepare one floppy disk per image file you had to
download. It is imperative that these disks are free from
defects. The easiest way to test this is to format the disks
for yourself. Do not trust pre-formatted floppies. The format
utility in &windows; will not tell about the presence of
bad blocks, it simply marks them as <quote>bad</quote>
and ignores them. It is advised that you use brand new
floppies if choosing this installation route.</para>
<important>
<para>If you try to install FreeBSD and the installation
program crashes, freezes, or otherwise misbehaves, one of
the first things to suspect is the floppies. Try writing
the floppy image files to new disks and try
again.</para>
</important>
</step>
<step>
<title>Write the Image Files to the Floppy Disks</title>
<para>The <filename>.flp</filename> files are
<emphasis>not</emphasis> regular files you copy to the disk.
They are images of the complete contents of the
disk. This means that you <emphasis>cannot</emphasis> simply
copy files from one disk to another.
Instead, you must use specific tools to write the
images directly to the disk.</para>
<indexterm><primary>DOS</primary></indexterm>
<para>If you are creating the floppies on a computer running
&ms-dos;/&windows;, then we provide a tool to do
this called <command>fdimage</command>.</para>
<para>If you are using the floppies from the CDROM, and your
CDROM is the <devicename>E:</devicename> drive, then you would
run this:</para>
<screen><prompt>E:\&gt;</prompt> <userinput>tools\fdimage floppies\kern.flp A:</userinput></screen>
<para>Repeat this command for each <filename>.flp</filename>
file, replacing the floppy disk each time, being sure to label
the disks with the name of the file that you copied to them.
Adjust the command line as necessary, depending on where you have
placed the <filename>.flp</filename> files. If you do not have
the CDROM, then <command>fdimage</command> can be downloaded from
the <ulink
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/tools/"><filename class="directory">tools</filename>
directory</ulink> on the FreeBSD FTP site.</para>
<para>If you are writing the floppies on a &unix; system (such as
another FreeBSD system) you can use the &man.dd.1; command to
write the image files directly to disk. On FreeBSD, you would
run:</para>
<screen>&prompt.root; <userinput>dd if=kern.flp of=/dev/fd0</userinput></screen>
<para>On FreeBSD, <filename>/dev/fd0</filename> refers to the
first floppy disk (the <devicename>A:</devicename> drive).
<filename>/dev/fd1</filename> would be the
<devicename>B:</devicename> drive, and so on. Other &unix;
variants might have different names for the floppy disk
devices, and you will need to check the documentation for the
system as necessary.</para>
</step>
</procedure>
<para>You are now ready to start installing FreeBSD.</para>
</sect2>
</sect1>
<sect1 id="install-start">
<title>Starting the Installation</title>
<important>
<para>By default, the installation will not make any changes to your
disk(s) until you see the following message:</para>
<literallayout class="monospaced">Last Chance: Are you SURE you want continue the installation?
If you're running this on a disk with data you wish to save then WE
STRONGLY ENCOURAGE YOU TO MAKE PROPER BACKUPS before proceeding!
We can take no responsibility for lost disk contents!</literallayout>
<para>The install can be exited at any time prior to the final
warning without changing the contents of the hard drive. If you are
concerned that you have configured something incorrectly you can just
turn the computer off before this point, and no damage will be
done.</para>
</important>
<sect2 id="install-starting">
<title>Booting</title>
<sect3 id="install-starting-i386">
<title>Booting for the &i386;</title>
<procedure>
<step>
<para>Start with your computer turned off.</para>
</step>
<step>
<para>Turn on the computer. As it starts it should display an
option to enter the system set up menu, or BIOS, commonly reached
by keys like <keycap>F2</keycap>, <keycap>F10</keycap>,
<keycap>Del</keycap>, or
<keycombo action="simul">
<keycap>Alt</keycap>
<keycap>S</keycap>
</keycombo>. Use whichever keystroke is indicated on screen. In
some cases your computer may display a graphic while it starts.
Typically, pressing <keycap>Esc</keycap> will dismiss the graphic
and allow you to see the necessary messages.</para>
</step>
<step>
<para>Find the setting that controls which devices the system boots
from. This is usually labeled as the <quote>Boot Order</quote>
and commonly shown as a list of devices, such as
<literal>Floppy</literal>, <literal>CDROM</literal>,
<literal>First Hard Disk</literal>, and so on.</para>
<para>If you needed to prepare boot floppies, then make sure that the
floppy disk is selected. If you are booting from the CDROM then
make sure that that is selected instead. In case of doubt, you
should consult the manual that came with your computer, and/or its
motherboard.</para>
<para>Make the change, then save and exit. The computer should now
restart.</para>
</step>
<step>
<para>If you needed to prepare boot floppies, as described in
<xref linkend="install-floppies">, then one of them will be the
first boot disc, probably the one containing
<filename>kern.flp</filename>. Put this disc in your floppy
drive.</para>
<para>If you are booting from CDROM, then you will need to turn on
the computer, and insert the CDROM at the first
opportunity.</para>
<para>If your computer starts up as normal and loads your existing
operating system, then either:</para>
<orderedlist>
<listitem>
<para>The disks were not inserted early enough in the boot
process. Leave them in, and try restarting your
computer.</para>
</listitem>
<listitem>
<para>The BIOS changes earlier did not work correctly. You
should redo that step until you get the right option.</para>
</listitem>
<listitem>
<para>Your particular BIOS does not support booting from
the desired media.</para>
</listitem>
</orderedlist>
</step>
<step>
<para>FreeBSD will start to boot. If you are booting from CDROM you
will see a display similar to this (version information omitted):</para>
<screen>Verifying DMI Pool Data ........
Boot from ATAPI CD-ROM :
1. FD 2.88MB System Type-(00)
Uncompressing ... done
BTX loader 1.00 BTX version is 1.01
Console: internal video/keyboard
BIOS drive A: is disk0
BIOS drive B: is disk1
BIOS drive C: is disk2
BIOS drive D: is disk3
BIOS 639kB/261120kB available memory
FreeBSD/i386 bootstrap loader, Revision 0.8
/kernel text=0x277391 data=0x3268c+0x332a8 |
|
Hit [Enter] to boot immediately, or any other key for command prompt.
Booting [kernel] in 9 seconds... _</screen>
<para>If you are booting from floppy disc, you will see a display
similar to this (version information omitted):</para>
<screen>Verifying DMI Pool Data ........
BTX loader 1.00 BTX version is 1.01
Console: internal video/keyboard
BIOS drive A: is disk0
BIOS drive C: is disk1
BIOS 639kB/261120kB available memory
FreeBSD/i386 bootstrap loader, Revision 0.8
/kernel text=0x277391 data=0x3268c+0x332a8 |
Please insert MFS root floppy and press enter:</screen>
<para>Follow these instructions by removing the
<filename>kern.flp</filename> disc, insert the
<filename>mfsroot.flp</filename> disc, and press
<keycap>Enter</keycap>. &os;&nbsp;5.3
and above provide other floppy disks set, as described
in <ulink linkend="install-floppies">previous
section</ulink>. Boot from first floppy;
when prompted, insert the other disks as required.</para>
</step>
<step>
<para>Whether you booted from floppy or CDROM, the
boot process will then get to this point:</para>
<screen>Hit [Enter] to boot immediately, or any other key for command prompt.
Booting [kernel] in 9 seconds... _</screen>
<para>Either wait ten seconds, or press <keycap>Enter</keycap>. This
will then launch the kernel configuration menu.</para>
</step>
</procedure>
</sect3>
<sect3>
<title>Booting for the Alpha</title>
<indexterm><primary>Alpha</primary></indexterm>
<procedure>
<step>
<para>Start with your computer turned off.</para>
</step>
<step>
<para>Turn on the computer and wait for a boot monitor
prompt.</para>
</step>
<step>
<para>If you needed to prepare boot floppies, as described in
<xref linkend="install-floppies"> then one of them will be the
first boot disc, probably the one containing
<filename>kern.flp</filename>. Put this disc in your floppy
drive and type the following command to boot the disk
(substituting the name of your floppy drive if
necessary):</para>
<screen>&gt;&gt;&gt;<userinput>BOOT DVA0 -FLAGS '' -FILE ''</userinput></screen>
<para>If you are booting from CDROM, insert the CDROM into
the drive and type the following command to start the
installation (substituting the name of the appropriate
CDROM drive if necessary):</para>
<screen>&gt;&gt;&gt;<userinput>BOOT DKA0 -FLAGS '' -FILE ''</userinput></screen>
</step>
<step>
<para>FreeBSD will start to boot. If you are booting from a
floppy disc, at some point you will see the message:</para>
<screen>Please insert MFS root floppy and press enter:</screen>
<para>Follow these instructions by removing the
<filename>kern.flp</filename> disc, insert the
<filename>mfsroot.flp</filename> disc, and press
<keycap>Enter</keycap>.</para>
</step>
<step>
<para>Whether you booted from floppy or CDROM, the
boot process will then get to this point:</para>
<screen>Hit [Enter] to boot immediately, or any other key for command prompt.
Booting [kernel] in 9 seconds... _</screen>
<para>Either wait ten seconds, or press <keycap>Enter</keycap>. This
will then launch the kernel configuration menu.</para>
</step>
</procedure>
</sect3>
</sect2>
<sect2 id="start-userconfig">
<title>Kernel Configuration</title>
<note><para>From FreeBSD versions 5.0 and later, userconfig has been deprecated
in favor of the new &man.device.hints.5; method. For more information
on &man.device.hints.5; please visit <xref linkend="device-hints"></para></note>
<para>The <firstterm>kernel</firstterm> is the core of the operating
system. It is responsible for many things, including access to all
the devices you may have on your system, such as hard disks, network
cards, sound cards, and so on. Each piece of hardware supported by
the FreeBSD kernel has a driver associated with it. Each driver has a
two or three letter name, such as <devicename>sa</devicename> for the
SCSI sequential access driver, or <devicename>sio</devicename> for the
Serial I/O driver (which manages COM ports).</para>
<para>When the kernel starts, each driver checks the system to see
whether or not the hardware it supports exists on your system. If it
does, then the driver configures the hardware and makes it available
to the rest of the kernel.</para>
<para>This checking is commonly referred to as <firstterm>device
probing</firstterm>. Unfortunately, it is not always possible to do
this in a safe way. Some hardware drivers do not co-exist well,
and probing for one piece of hardware can sometimes leave
another in an inconsistent state. This is a basic
limitation of the <acronym>PC</acronym> design.</para>
<para>Many older devices are called ISA devices&mdash;as opposed
to PCI devices. The ISA specification requires each device to have
some information hard coded into it, typically the Interrupt Request
Line number (IRQ) and IO port address that the driver uses. This
information is commonly set by using physical
<firstterm>jumpers</firstterm> on the card, or by using a DOS based
utility.</para>
<para>This was often a source of problems, because it was not possible
to have two devices that shared the same IRQ or port address.</para>
<para>Newer devices follow the PCI specification, which does not require
this, as the devices are supposed to cooperate with the BIOS, and are
told which IRQ and IO port addresses to use.</para>
<para>If you have any ISA devices in your computer then FreeBSD's
driver for that device will need to be configured with the IRQ and
port address that you have set the card to. This is why carrying out
an inventory of your hardware (see <xref
linkend="install-inventory">) can be useful.</para>
<para>Unfortunately, the default IRQs and memory ports used by some
drivers clash. This is because some ISA devices are shipped with IRQs
or memory ports that clash. The defaults in FreeBSD's drivers are
deliberately set to mirror the manufacturer's defaults, so that, out
of the box, as many devices as possible will work.</para>
<para>This is almost never an issue when running FreeBSD day-to-day.
Your computer will not normally contain two pieces of hardware that
clash, because one of them would not work (irrespective of the
operating system you are using).</para>
<para>It becomes an issue when you are installing FreeBSD for the first
time because the kernel used to carry out the install has to contain
as many drivers as possible, so that many different hardware
configurations can be supported. This means that some of
those drivers will have conflicting configurations. The devices are
probed in a strict order, and if you own a device that is probed late
in the process, but conflicted with an earlier probe, then your
hardware might not function or be probed correctly when you install
FreeBSD.</para>
<para>Because of this, the first thing you have the opportunity to do
when installing FreeBSD is look at the list of drivers that are
configured into the kernel, and either disable some of them, if you
do not own that device, or confirm (and alter) the driver's
configuration if you do own the device but the defaults are
wrong.</para>
<para>This probably sounds much more complicated than it actually
is.</para>
<para><xref linkend="kernel-config"> shows the first kernel
configuration menu. We recommend that you choose the
<guimenuitem>Start kernel configuration in full-screen visual
mode</guimenuitem> option, as it presents the easiest interface for
the new user.</para>
<figure id="kernel-config">
<title>Kernel Configuration Menu</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/userconfig" format="PNG">
</imageobject>
<textobject>
<screen>&txt.install.userconfig;</screen>
</textobject>
</mediaobject>
</figure>
<para>The kernel configuration screen (<xref linkend="fig-userconfig">)
is then divided into four sections:</para>
<orderedlist>
<listitem>
<para>A collapsible list of all the drivers that are currently
marked as <quote>active</quote>, subdivided into groups such as
<literal>Storage</literal>, and <literal>Network</literal>. Each
driver is shown as a description, its two or three letter driver
name, and the IRQ and memory port used by that driver. In
addition, if an active driver conflicts with another active driver
then <literal>CONF</literal> is shown next to the driver name.
This section also shows the total number of conflicting drivers
that are currently active.</para>
</listitem>
<listitem>
<para>Drivers that have been marked inactive. They remain in the
kernel, but they will not probe for their device when the kernel
starts. These are subdivided into groups in the same way as the
active driver list.</para>
</listitem>
<listitem>
<para>More detail about the currently selected driver, including its
IRQ and memory port address.</para>
</listitem>
<listitem>
<para>Information about the keystrokes that are valid at this point
in time.</para>
</listitem>
</orderedlist>
<figure id="fig-userconfig">
<title>The Kernel Device Configuration Visual Interface</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/userconfig2" format="PNG">
</imageobject>
<textobject>
<screen>&txt.install.userconfig2;</screen>
</textobject>
</mediaobject>
</figure>
<para>Do not worry if any conflicts are listed,
it is to be expected; all the drivers are enabled, and
as has already been explained, some of them will conflict with one
another.</para>
<para>You now have to work through the list of drivers, resolving the
conflicts.</para>
<procedure>
<title>Resolving Driver Conflicts</title>
<step>
<para>Press <keycap>X</keycap>. This will completely expand the
list of drivers, so you can see all of them. You will need to use
the arrow keys to scroll back and forth through the active driver
list.</para>
<para><xref linkend="hardware-conflicts"> shows the result of
pressing <keycap>X</keycap>.</para>
<figure id="hardware-conflicts">
<title>Expanded Driver List</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/hdwrconf" format="PNG">
</imageobject>
</mediaobject>
</figure>
</step>
<step>
<para>Disable all the drivers for devices that you do not have. To
disable a driver, highlight it with the arrow keys and press
<keycap>Del</keycap>. The driver will be moved to the
<literal>Inactive Drivers</literal> list.</para>
<para>If you inadvertently disable a device that you need then press
<keycap>Tab</keycap> to switch to the <literal>Inactive
Drivers</literal> list, select the driver that you disabled, and
press <keycap>Enter</keycap> to move it back to the active
list.</para>
<warning>
<para>Do not disable <devicename>sc0</devicename>. This controls
the screen, and you will need this unless you are installing
over a serial cable.</para>
</warning>
<warning>
<para>Only disable <devicename>atkbd0</devicename> if you are
using a USB keyboard. If you have a normal keyboard then you
must keep <devicename>atkbd0</devicename>.</para>
</warning>
</step>
<step>
<para>If there are no conflicts listed then you can skip this step.
Otherwise, the remaining conflicts need to be examined. If they
do not have the indication of an <quote>allowed conflict</quote>
in the message area, then either the IRQ/address for device probe
will need to be changed, <emphasis>or</emphasis> the IRQ/address
on the hardware will need to be changed.</para>
<para>To change the driver's configuration for IRQ and IO port
address, select the device and press <keycap>Enter</keycap>. The
cursor will move to the third section of the screen, and you can
change the values. You should enter the values for IRQ and port
address that you discovered when you made your hardware inventory.
Press <keycap>Q</keycap> to finish editing the device's
configuration and return to the active driver list.</para>
<para>If you are not sure what these figures should be then you can
try using <literal>-1</literal>. Some FreeBSD drivers can safely
probe the hardware to discover what the correct value should be,
and a value of <literal>-1</literal> configures them to do
this.</para>
<para>The procedure for changing the address on the hardware varies
from device to device. For some devices you may need to
physically remove the card from your computer and adjust jumper
settings or DIP switches. Other cards may have come with a DOS
floppy that contains the programs used to reconfigure the card.
In any case, you should refer to the documentation that came with
the device. This will obviously entail restarting your computer,
so you will need to boot back into the FreeBSD installation
routine when you have reconfigured the card.</para>
</step>
<step>
<para>When all the conflicts have been resolved the screen will look
similar to <xref linkend="userconfig-done">.</para>
<figure id="userconfig-done">
<title>Driver Configuration With No Conflicts</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/probstart" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>As you can see, the active driver list is now much smaller,
with only drivers for the hardware that actually exists being
listed.</para>
<para>You can now save these changes, and move on to the next step
of the install. Press <keycap>Q</keycap> to quit the device
configuration interface. This message will appear:</para>
<screen>Save these parameters before exiting? ([Y]es/[N]o/[C]ancel)</screen>
<para>Answer <keycap>Y</keycap> to save the parameters to memory
(it will be saved to disk if you finish the install) and the
probing will start. After displaying the probe results in white
on black text <application>sysinstall</application> will start
and display its main menu
(<xref linkend="sysinstall-main">).</para>
<figure id="sysinstall-main">
<title>Sysinstall Main Menu</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/main1" format="PNG">
</imageobject>
</mediaobject>
</figure>
</step>
</procedure>
</sect2>
<sect2 id="view-probe">
<title>Reviewing the Device Probe Results</title>
<para>The last few hundred lines that have been displayed on screen are
stored and can be reviewed.</para>
<para>To review the buffer, press <keycap>Scroll Lock</keycap>. This
turns on scrolling in the display. You can then use the arrow keys, or
<keycap>PageUp</keycap> and <keycap>PageDown</keycap> to view the
results. Press <keycap>Scroll Lock</keycap> again to stop
scrolling.</para>
<para>Do this now, to review the text that scrolled off the screen when
the kernel was carrying out the device probes. You will see text
similar to <xref linkend="install-dev-probe">, although the precise
text will differ depending on the devices that you have in your
computer.</para>
<figure id="install-dev-probe">
<title>Typical Device Probe Results</title>
<screen>avail memory = 253050880 (247120K bytes)
Preloaded elf kernel "kernel" at 0xc0817000.
Preloaded mfs_root "/mfsroot" at 0xc0817084.
md0: Preloaded image &lt;/mfsroot&gt; 4423680 bytes at 0xc03ddcd4
md1: Malloc disk
Using $PIR table, 4 entries at 0xc00fde60
npx0: &lt;math processor&gt; on motherboard
npx0: INT 16 interface
pcib0: &lt;Host to PCI bridge&gt; on motherboard
pci0: &lt;PCI bus&gt; on pcib0
pcib1:&lt;VIA 82C598MVP (Apollo MVP3) PCI-PCI (AGP) bridge&gt; at device 1.0 on pci0
pci1: &lt;PCI bus&gt; on pcib1
pci1: &lt;Matrox MGA G200 AGP graphics accelerator&gt; at 0.0 irq 11
isab0: &lt;VIA 82C586 PCI-ISA bridge&gt; at device 7.0 on pci0
isa0: &lt;iSA bus&gt; on isab0
atapci0: &lt;VIA 82C586 ATA33 controller&gt; port 0xe000-0xe00f at device 7.1 on pci0
ata0: at 0x1f0 irq 14 on atapci0
ata1: at 0x170 irq 15 on atapci0
uhci0 &lt;VIA 83C572 USB controller&gt; port 0xe400-0xe41f irq 10 at device 7.2 on pci
0
usb0: &lt;VIA 83572 USB controller&gt; on uhci0
usb0: USB revision 1.0
uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr1
uhub0: 2 ports with 2 removable, self powered
pci0: &lt;unknown card&gt; (vendor=0x1106, dev=0x3040) at 7.3
dc0: &lt;ADMtek AN985 10/100BaseTX&gt; port 0xe800-0xe8ff mem 0xdb000000-0xeb0003ff ir
q 11 at device 8.0 on pci0
dc0: Ethernet address: 00:04:5a:74:6b:b5
miibus0: &lt;MII bus&gt; on dc0
ukphy0: &lt;Generic IEEE 802.3u media interface&gt; on miibus0
ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
ed0: &lt;NE2000 PCI Ethernet (RealTek 8029)&gt; port 0xec00-0xec1f irq 9 at device 10.
0 on pci0
ed0 address 52:54:05:de:73:1b, type NE2000 (16 bit)
isa0: too many dependant configs (8)
isa0: unexpected small tag 14
orm0: &lt;Option ROM&gt; at iomem 0xc0000-0xc7fff on isa0
fdc0: &lt;NEC 72065B or clone&gt; at port 0x3f0-0x3f5,0x3f7 irq 6 drq2 on isa0
fdc0: FIFO enabled, 8 bytes threshold
fd0: &lt;1440-KB 3.5" drive&gt; on fdc0 drive 0
atkbdc0: &lt;Keyboard controller (i8042)&gt; at port 0x60,0x64 on isa0
atkbd0: &lt;AT Keyboard&gt; flags 0x1 irq1 on atkbdc0
kbd0 at atkbd0
psm0: &lt;PS/2 Mouse&gt; irq 12 on atkbdc0
psm0: model Generic PS/@ mouse, device ID 0
vga0: &lt;Generic ISA VGA&gt; at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
sc0: &lt;System console&gt; at flags 0x100 on isa0
sc0: VGA &lt;16 virtual consoles, flags=0x300&gt;
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
ppc0: &lt;Parallel port&gt; at port 0x378-0x37f irq 7 on isa0
pppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
ppc0: FIFO with 16/16/15 bytes threshold
plip0: &lt;PLIP network interface&gt; on ppbus0
ad0: 8063MB &lt;IBM-DHEA-38451&gt; [16383/16/63] at ata0-master UDMA33
acd0: CD-RW &lt;LITE-ON LTR-1210B&gt; at ata1-slave PIO4
Mounting root from ufs:/dev/md0c
/stand/sysinstall running as init on vty0</screen>
</figure>
<para>Check the probe results carefully to make sure that FreeBSD found
all the devices you expected. If a device was not found, then it will
not be listed. If the device's driver required configuring
with the IRQ and port address then you should check that you entered
them correctly.</para>
<para>If you need to make changes to the UserConfig device probing,
it is easy to exit the <application>sysinstall</application> program
and start over again. It is also a good way to become more familiar
with the process.</para>
<figure id="sysinstall-exit">
<title>Select Sysinstall Exit</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/sysinstall-exit" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Use the arrow keys to select
<guimenuitem>Exit Install</guimenuitem> from the Main
Install Screen menu. The following message will display:</para>
<screen> User Confirmation Requested
Are you sure you wish to exit? The system will reboot
(be sure to remove any floppies from the drives).
[ Yes ] No</screen>
<para>The install program will start again if the CDROM is left
in the drive and &gui.yes; is selected.</para>
<para>If you are booting from floppies it will be necessary to remove
the <filename>mfsroot.flp</filename> floppy and replace it with
<filename>kern.flp</filename> before rebooting.</para>
</sect2>
</sect1>
<sect1 id="using-sysinstall">
<title>Introducing Sysinstall</title>
<para>The <application>sysinstall</application> utility is the installation
application provided by the FreeBSD Project. It is console based and is
divided into a number of menus and screens that you can use to
configure and control the installation process.</para>
<para>The <application>sysinstall</application> menu system is controlled
by the arrow keys, <keycap>Enter</keycap>, <keycap>Space</keycap>, and
other keys. A detailed description of these keys and what they do is
contained in <application>sysinstall</application>'s usage
information.</para>
<para>To review this information, ensure that the
<guimenuitem>Usage</guimenuitem> entry is highlighted and that the
<guibutton>[Select]</guibutton> button is selected, as shown in <xref
linkend="sysinstall-main3">, then press <keycap>Enter</keycap>.</para>
<para>The instructions for using the menu system will be displayed. After
reviewing them, press <keycap>Enter</keycap> to return to the Main
Menu.</para>
<figure id="sysinstall-main3">
<title>Selecting Usage from Sysinstall Main Menu</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/main1" format="PNG">
</imageobject>
</mediaobject>
</figure>
<sect2 id="select-doc">
<title>Selecting the Documentation Menu</title>
<para>From the Main Menu, select <guimenuitem>Doc</guimenuitem> with
the arrow keys and
press <keycap>Enter</keycap>.</para>
<figure id="main-doc">
<title>Selecting Documentation Menu</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/main-doc" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>This will display the Documentation Menu.</para>
<figure id="docmenu1">
<title>Sysinstall Documentation Menu</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/docmenu1" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>It is important to read the documents provided.</para>
<para>To view a document, select it with the arrow keys and
press <keycap>Enter</keycap>. When finished reading a document,
pressing <keycap>Enter</keycap> will return to the Documentation
Menu.</para>
<para>To return to the Main Installation Menu, select
<guimenuitem>Exit</guimenuitem> with the
arrow keys and press <keycap>Enter</keycap>.</para>
</sect2>
<sect2 id="keymap">
<title>Selecting the Keymap Menu</title>
<para>To change the keyboard mapping, use the arrow keys to select
<guimenuitem>Keymap</guimenuitem> from the menu and press
<keycap>Enter</keycap>. This is only required if you are
using a non-standard or non-US keyboard.</para>
<figure id="sysinstall-keymap">
<title>Sysinstall Main Menu</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/main-keymap" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>A different keyboard mapping may be chosen by selecting the
menu item using up/down arrow keys and pressing <keycap>Space</keycap>.
Pressing <keycap>Space</keycap> again will unselect the item.
When finished, choose the &gui.ok; using the arrow keys and press
<keycap>Enter</keycap>.</para>
<para>Only a partial list is shown in this screen representation.
Selecting &gui.cancel; by pressing <keycap>Tab</keycap> will use the default
keymap and return to the Main Install Menu.</para>
<figure id="sysinstall-keymap-menu">
<title>Sysinstall Keymap Menu</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/keymap" format="PNG">
</imageobject>
</mediaobject>
</figure>
</sect2>
<sect2 id="viewsetoptions">
<title>Installation Options Screen</title>
<para>Select <guimenuitem>Options</guimenuitem> and press
<keycap>Enter</keycap>.</para>
<figure id="sysinstall-options">
<title>Sysinstall Main Menu</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/main-options" format="PNG">
</imageobject>
</mediaobject>
</figure>
<figure id="options">
<title>Sysinstall Options</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/options" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>The default values are usually fine for most users and do
not need to be changed. The release name will vary according
to the version being installed.</para>
<para>The description of the selected item will appear at the
bottom of the screen highlighted in blue. Notice that one of the
options is <guimenuitem>Use Defaults</guimenuitem> to reset all
values to startup defaults.</para>
<para>Press <keycap>F1</keycap> to read the help screen about the
various options.</para>
<para>Pressing <keycap>Q</keycap> will return to the Main Install
menu.</para>
</sect2>
<sect2 id="start-install">
<title>Begin a Standard Installation</title>
<para>The <guimenuitem>Standard</guimenuitem> installation is the
option recommended for those new to &unix; or FreeBSD. Use the arrow
keys to select <guimenuitem>Standard</guimenuitem> and
then press <keycap>Enter</keycap> to start the installation.</para>
<figure id="sysinstall-standard">
<title>Begin Standard Installation</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/main-std" format="PNG">
</imageobject>
</mediaobject>
</figure>
</sect2>
</sect1>
<sect1 id="install-steps">
<title>Allocating Disk Space</title>
<para>Your first task is to allocate disk space for FreeBSD, and label
that space so that <application>sysinstall</application> can prepare
it. In order to do this you need to know how FreeBSD expects to find
information on the disk.</para>
<sect2 id="install-drive-bios-numbering">
<title>BIOS Drive Numbering</title>
<para>Before you install and configure FreeBSD on your system, there is an
important subject that you should be aware of, especially if you have
multiple hard drives.</para>
<indexterm><primary>DOS</primary></indexterm>
<indexterm><primary>Microsoft Windows</primary></indexterm>
<para>In a PC running a BIOS-dependent operating system such as
&ms-dos; or &microsoft.windows;, the BIOS is able to abstract the
normal disk drive order, and
the operating system goes along with the change. This allows the user
to boot from a disk drive other than the so-called <quote>primary
master</quote>. This is especially convenient for some users who have
found that the simplest and cheapest way to keep a system backup is to
buy an identical second hard drive, and perform routine copies of the
first drive to the second drive using
<application><trademark class="registered">Ghost</trademark></application> or <application>XCOPY</application>
. Then, if the
first drive fails, or is attacked by a virus, or is scribbled upon by an
operating system defect, he can easily recover by instructing the BIOS
to logically swap the drives. It is like switching the cables on the
drives, but without having to open the case.</para>
<indexterm><primary>SCSI</primary></indexterm>
<indexterm><primary>BIOS</primary></indexterm>
<para>More expensive systems with SCSI controllers often include BIOS
extensions which allow the SCSI drives to be re-ordered in a similar
fashion for up to seven drives.</para>
<para>A user who is accustomed to taking advantage of these features may
become surprised when the results with FreeBSD are not as expected.
FreeBSD does not use the BIOS, and does not know the <quote>logical BIOS
drive mapping</quote>. This can lead to very perplexing situations,
especially when drives are physically identical in geometry, and have
also been made as data clones of one another.</para>
<para>When using FreeBSD, always restore the BIOS to natural drive
numbering before installing FreeBSD, and then leave it that way. If you
need to switch drives around, then do so, but do it the hard way, and
open the case and move the jumpers and cables.</para>
<sidebar>
<title>An Illustration from the Files of Bill and Fred's Exceptional
Adventures:</title>
<para>Bill breaks-down an older Wintel box to make another FreeBSD box
for Fred. Bill installs a single SCSI drive as SCSI unit zero and
installs FreeBSD on it.</para>
<para>Fred begins using the system, but after several days notices that
the older SCSI drive is reporting numerous soft errors and reports
this fact to Bill.</para>
<para>After several more days, Bill decides it is time to address the
situation, so he grabs an identical SCSI drive from the disk drive
<quote>archive</quote> in the back room. An initial surface scan
indicates that
this drive is functioning well, so Bill installs this drive as SCSI
unit four and makes an image copy from drive zero to drive four. Now
that the new drive is installed and functioning nicely, Bill decides
that it is a good idea to start using it, so he uses features in the
SCSI BIOS to re-order the disk drives so that the system boots from
SCSI unit four. FreeBSD boots and runs just fine.</para>
<para>Fred continues his work for several days, and soon Bill and Fred
decide that it is time for a new adventure &mdash; time to upgrade to a
newer version of FreeBSD. Bill removes SCSI unit zero because it was
a bit flaky and replaces it with another identical disk drive from
the <quote>archive</quote>. Bill then installs the new version of
FreeBSD onto the new SCSI unit zero using Fred's magic Internet FTP
floppies. The installation goes well.</para>
<para>Fred uses the new version of FreeBSD for a few days, and certifies
that it is good enough for use in the engineering department. It is
time to copy all of his work from the old version. So Fred mounts
SCSI unit four (the latest copy of the older FreeBSD version). Fred
is dismayed to find that none of his precious work is present on SCSI
unit four.</para>
<para>Where did the data go?</para>
<para>When Bill made an image copy of the original SCSI unit zero onto
SCSI unit four, unit four became the <quote>new clone</quote>.
When Bill re-ordered the SCSI BIOS so that he could boot from
SCSI unit four, he was only fooling himself.
FreeBSD was still running on SCSI unit zero.
Making this kind of BIOS change will cause some or all of the Boot and
Loader code to be fetched from the selected BIOS drive, but when the
FreeBSD kernel drivers take-over, the BIOS drive numbering will be
ignored, and FreeBSD will transition back to normal drive numbering.
In the illustration at hand, the system continued to operate on the
original SCSI unit zero, and all of Fred's data was there, not on SCSI
unit four. The fact that the system appeared to be running on SCSI
unit four was simply an artifact of human expectations.</para>
<para>We are delighted to mention that no data bytes were killed or
harmed in any way by our discovery of this phenomenon. The older SCSI
unit zero was retrieved from the bone pile, and all of Fred's work was
returned to him, (and now Bill knows that he can count as high as
zero).</para>
<para>Although SCSI drives were used in this illustration, the concepts
apply equally to IDE drives.</para>
</sidebar>
</sect2>
<sect2 id="main-fdisk">
<title>Creating Slices Using FDisk</title>
<note>
<para>No changes you make at this point will be written to the disk.
If you think you have made a mistake and want to start again you can
use the menus to exit <application>sysinstall</application> and try
again or press <keycap>U</keycap> to use the <guimenuitem>Undo</guimenuitem> option.
If you get confused and can not see how to exit you can
always turn your computer off.</para>
</note>
<para>After choosing to begin a standard installation in
<application>sysinstall</application> you will be shown this
message:</para>
<screen> Message
In the next menu, you will need to set up a DOS-style ("fdisk")
partitioning scheme for your hard disk. If you simply wish to devote
all disk space to FreeBSD (overwriting anything else that might be on
the disk(s) selected) then use the (A)ll command to select the default
partitioning scheme followed by a (Q)uit. If you wish to allocate only
free space to FreeBSD, move to a partition marked "unused" and use the
(C)reate command.
[ OK ]
[ Press enter or space ]</screen>
<para>Press <keycap>Enter</keycap> as instructed. You will then be
shown a list of all the hard drives that the kernel found when it
carried out the device probes.
<xref linkend="sysinstall-fdisk-drive1"> shows an example from a
system with two IDE disks. They have been called
<devicename>ad0</devicename> and <devicename>ad2</devicename>.</para>
<figure id="sysinstall-fdisk-drive1">
<title>Select Drive for FDisk</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/fdisk-drive1" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>You might be wondering why <devicename>ad1</devicename> is not
listed here. Why has it been missed?</para>
<para>Consider what would happen if you had two IDE hard disks, one
as the master on the first IDE controller, and one as the master on
the second IDE controller. If FreeBSD numbered these as it found
them, as <devicename>ad0</devicename> and
<devicename>ad1</devicename> then everything would work.</para>
<para>But if you then added a third disk, as the slave device on the
first IDE controller, it would now be <devicename>ad1</devicename>,
and the previous <devicename>ad1</devicename> would become
<devicename>ad2</devicename>. Because device names (such as
<devicename>ad1s1a</devicename>) are used to find filesystems, you
may suddenly discover that some of your filesystems no longer
appear correctly, and you would need to change your FreeBSD
configuration.</para>
<para>To work around this, the kernel can be configured to name IDE
disks based on where they are, and not the order in which they were
found. With this scheme the master disk on the second IDE
controller will <emphasis>always</emphasis> be
<devicename>ad2</devicename>, even if there are no
<devicename>ad0</devicename> or <devicename>ad1</devicename>
devices.</para>
<para>This configuration is the default for the FreeBSD kernel, which
is why this display shows <devicename>ad0</devicename> and
<devicename>ad2</devicename>. The machine on which this screenshot
was taken had IDE disks on both master channels of the IDE
controllers, and no disks on the slave channels.</para>
<para>You should select the disk on which you want to install FreeBSD,
and then press &gui.ok;.
<application>FDisk</application> will start, with a display similar to
that shown in <xref linkend="sysinstall-fdisk1">.</para>
<para>The <application>FDisk</application> display is broken into three
sections.</para>
<para>The first section, covering the first two lines of the display,
shows details about the currently selected disk, including its FreeBSD
name, the disk geometry, and the total size of the disk.</para>
<para>The second section shows the slices that are currently on the
disk, where they start and end, how large they are, the name FreeBSD
gives them, and their description and sub-type. This example shows two
small unused slices, which are artifacts of disk layout schemes on the
PC. It also shows one large <acronym>FAT</acronym> slice, which almost certainly appears
as <devicename>C:</devicename> in &ms-dos; / &windows;, and an extended
slice, which may contain other drive letters for &ms-dos; / &windows;.</para>
<para>The third section shows the commands that are available in
<application>FDisk</application>.</para>
<figure id="sysinstall-fdisk1">
<title>Typical Fdisk Partitions before Editing</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/fdisk-edit1" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>What you do now will depend on how you want to slice up your
disk.</para>
<para>If you want to use FreeBSD for the entire disk (which will delete
all the other data on this disk when you confirm that you want
<application>sysinstall</application> to continue later in the
installation process) then you can press <keycap>A</keycap>, which
corresponds to the <guimenuitem>Use Entire Disk</guimenuitem> option.
The existing slices will be removed, and replaced with a small area
flagged as <literal>unused</literal> (again, an artifact of PC disk
layout), and then one large slice for FreeBSD. If you do this, then
you should select the newly created FreeBSD slice using the arrow
keys, and press <keycap>S</keycap> to mark the slice as being
bootable. The screen will then look very similar to
<xref linkend="sysinstall-fdisk2">. Note the
<literal>A</literal> in the <literal>Flags</literal> column, which
indicates that this slice is <emphasis>active</emphasis>, and will be
booted from.</para>
<para>If you will be deleting an existing slice to make space for
FreeBSD then you should select the slice using the arrow keys, and
then press <keycap>D</keycap>. You can then press <keycap>C</keycap>,
and be prompted for size of slice you want to create. Enter the
appropriate figure and press <keycap>Enter</keycap>. The default
value in this box represents the largest possible slice you can
make, which could be the largest contiguous block of unallocated
space or the size of the entire hard disk.</para>
<para>If you have already made space for FreeBSD (perhaps by using a
tool such as <application>&partitionmagic;</application>) then you can
press <keycap>C</keycap> to create a new slice. Again, you will be
prompted for the size of slice you would like to create.</para>
<figure id="sysinstall-fdisk2">
<title>Fdisk Partition Using Entire Disk</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/fdisk-edit2" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>When finished, press <keycap>Q</keycap>. Your changes will be
saved in <application>sysinstall</application>, but will not yet be
written to disk.</para>
</sect2>
<sect2 id="bootmgr">
<title>Install a Boot Manager</title>
<para>You now have the option to install a boot manager. In general,
you should choose to install the FreeBSD boot manager if:</para>
<itemizedlist>
<listitem>
<para>You have more than one drive, and have installed FreeBSD onto
a drive other than the first one.</para>
</listitem>
<listitem>
<para>You have installed FreeBSD alongside another operating system
on the same disk, and you want to choose whether to start FreeBSD
or the other operating system when you start the computer.</para>
</listitem>
</itemizedlist>
<para>If FreeBSD is going to be the only operating system on
this machine, installed on the first hard disk, then the
<guimenuitem>Standard</guimenuitem> boot manager will suffice.
Choose <guimenuitem>None</guimenuitem> if you are using a
third-party boot manager capable of booting FreeBSD.</para>
<para>Make your choice and press <keycap>Enter</keycap>.</para>
<figure id="sysinstall-bootmgr">
<title>Sysinstall Boot Manager Menu</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/boot-mgr" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>The help screen, reached by pressing <keycap>F1</keycap>,
discusses the problems that can be encountered when trying to share
the hard disk between operating systems.</para>
</sect2>
<sect2>
<title>Creating Slices on Another Drive</title>
<para>If there is more than one drive, it will return to the
Select Drives screen after the boot manager selection. If you wish to
install FreeBSD on to more than one disk, then you can select another
disk here and repeat the slice process using
<application>FDisk</application>.</para>
<important>
<para>If you are installing FreeBSD on a drive other than your
first, then the FreeBSD boot manager needs to be installed on
both drives.</para>
</important>
<figure id="sysinstall-fdisk-drive2">
<title>Exit Select Drive</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/fdisk-drive2" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>The <keycap>Tab</keycap> key toggles between the last drive
selected, &gui.ok;, and
&gui.cancel;.</para>
<para>Press the <keycap>Tab</keycap> once to toggle to the
&gui.ok;, then
press <keycap>Enter</keycap>
to continue with the installation.</para>
</sect2>
<sect2 id="disklabeleditor">
<title>Creating Partitions Using
<application>Disklabel</application></title>
<para>You must now create some partitions inside each slice that you
have just created. Remember that each partition is lettered, from
<literal>a</literal> through to <literal>h</literal>, and that
partitions <literal>b</literal>, <literal>c</literal>, and
<literal>d</literal> have conventional meanings that you should adhere
to.</para>
<para>Certain applications can benefit from particular partition
schemes, especially if you are laying out partitions across more than
one disk. However, for this, your first FreeBSD installation, you do
not need to give too much thought to how you partition the disk. It
is more important that you install FreeBSD and start learning how to
use it. You can always re-install FreeBSD to change your partition
scheme when you are more familiar with the operating system.</para>
<para>This scheme features four partitions&mdash;one for swap space, and
three for filesystems.</para>
<table frame="none" pgwide="1">
<title>Partition Layout for First Disk</title>
<tgroup cols="4">
<colspec colwidth="1*">
<colspec colwidth="1*">
<colspec colwidth="1*">
<colspec colwidth="4*">
<thead>
<row>
<entry>Partition</entry>
<entry>Filesystem</entry>
<entry>Size</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry><literal>a</literal></entry>
<entry><filename>/</filename></entry>
<entry>100&nbsp;MB</entry>
<entry>This is the root filesystem. Every other filesystem
will be mounted somewhere under this one. 100&nbsp;MB is a
reasonable size for this filesystem. You will not be storing
too much data on it, as a regular FreeBSD install will put
about 40&nbsp;MB of data here. The remaining space is for temporary
data, and also leaves expansion space if future versions of
FreeBSD need more space in <filename>/</filename>.</entry>
</row>
<row>
<entry><literal>b</literal></entry>
<entry>N/A</entry>
<entry>2-3 x RAM</entry>
<entry><para>The system's swap space is kept on this partition.
Choosing the right amount of swap space can be a bit of an
art. A good rule of thumb is that your swap
space should be two or three times as much as the
available physical memory (RAM).
You should also have at least 64&nbsp;MB of swap, so if you have
less than 32&nbsp;MB of RAM in your computer then set the swap
amount to 64&nbsp;MB.</para><para>
If you have more than one disk then you can put swap
space on each disk. FreeBSD will then use each disk for
swap, which effectively speeds up the act of swapping. In
this case, calculate the total amount of swap you need
(e.g., 128&nbsp;MB), and then divide this by the number of disks
you have (e.g., two disks) to give the amount of swap you
should put on each disk, in this example, 64&nbsp;MB of swap per
disk.</para></entry>
</row>
<row>
<entry><literal>e</literal></entry>
<entry><filename>/var</filename></entry>
<entry>50&nbsp;MB</entry>
<entry>The <filename>/var</filename> directory contains
files that are constantly varying;
log files, and other administrative files. Many
of these files are read-from or written-to extensively during
FreeBSD's day-to-day running. Putting these files on another
filesystem allows FreeBSD to optimize the access of these
files without affecting other files in other directories that
do not have the same access pattern.</entry>
</row>
<row>
<entry><literal>f</literal></entry>
<entry><filename>/usr</filename></entry>
<entry>Rest of disk</entry>
<entry>All your other files will typically be stored in
<filename>/usr</filename> and its subdirectories.</entry>
</row>
</tbody>
</tgroup>
</table>
<para>If you will be installing FreeBSD on to more than one disk then
you must also create partitions in the other slices that you
configured. The easiest way to do this is to create two partitions on
each disk, one for the swap space, and one for a filesystem.</para>
<table frame="none" pgwide="1">
<title>Partition Layout for Subsequent Disks</title>
<tgroup cols="4">
<colspec colwidth="1*">
<colspec colwidth="1*">
<colspec colwidth="2*">
<colspec colwidth="3*">
<thead>
<row>
<entry>Partition</entry>
<entry>Filesystem</entry>
<entry>Size</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry><literal>b</literal></entry>
<entry>N/A</entry>
<entry>See description</entry>
<entry>As already discussed, you can split swap space across
each disk. Even though the <literal>a</literal> partition is
free, convention dictates that swap space stays on the
<literal>b</literal> partition.</entry>
</row>
<row>
<entry><literal>e</literal></entry>
<entry>/disk<replaceable>n</replaceable></entry>
<entry>Rest of disk</entry>
<entry>The rest of the disk is taken up with one big partition.
This could easily be put on the <literal>a</literal>
partition, instead of the <literal>e</literal> partition.
However, convention says that the <literal>a</literal>
partition on a slice is reserved for the filesystem that will
be the root (<filename>/</filename>) filesystem. You do not
have to follow this convention, but
<application>sysinstall</application> does, so following it
yourself makes the installation slightly cleaner. You can
choose to mount this filesystem anywhere; this example
suggests that you mount them as directories
<filename>/disk<replaceable>n</replaceable></filename>, where
<replaceable>n</replaceable> is a number that changes for each
disk. But you can use another scheme if you prefer.</entry>
</row>
</tbody>
</tgroup>
</table>
<para>Having chosen your partition layout you can now create it using
<application>sysinstall</application>. You will see this
message:</para>
<screen> Message
Now, you need to create BSD partitions inside of the fdisk
partition(s) just created. If you have a reasonable amount of disk
space (200MB or more) and don't have any special requirements, simply
use the (A)uto command to allocate space automatically. If you have
more specific needs or just don't care for the layout chosen by
(A)uto, press F1 for more information on manual layout.
[ OK ]
[ Press enter or space ]</screen>
<para>Press <keycap>Enter</keycap> to start the FreeBSD partition
editor, called <application>Disklabel</application>.</para>
<para><xref linkend="sysinstall-label"> shows the display when you first
start <application>Disklabel</application>. The display is divided in
to three sections.</para>
<para>The first few lines show the name of the disk you are currently
working on, and the slice that contains the partitions you are
creating (at this point <application>Disklabel</application> calls
this the <literal>Partition name</literal> rather than slice name).
This display also shows the amount of free space within the slice;
that is, space that was set aside in the slice, but that has not yet
been assigned to a partition.</para>
<para>The middle of the display shows the partitions that have been
created, the name of the filesystem that each partition contains,
their size, and some options pertaining to the creation of the
filesystem.</para>
<para>The bottom third of the screen shows the keystrokes that are valid
in <application>Disklabel</application>.</para>
<figure id="sysinstall-label">
<title>Sysinstall Disklabel Editor</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/disklabel-ed1" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para><application>Disklabel</application> can automatically create
partitions for you and assign them default sizes. Try this now, by
Pressing <keycap>A</keycap>. You will see a display similar to that
shown in <xref linkend="sysinstall-label2">. Depending on the size of
the disk you are using, the defaults may or may not be appropriate.
This does not matter, as you do not have to accept the
defaults.</para>
<note>
<para>Beginning with FreeBSD&nbsp;4.5, the default partitioning assigns
the <filename>/tmp</filename> directory its own partition instead
of being part of the <filename>/</filename> partition. This
helps avoid filling the <filename>/</filename> partition with
temporary files.</para>
</note>
<figure id="sysinstall-label2">
<title>Sysinstall Disklabel Editor with Auto Defaults</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/disklabel-auto" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>If you choose to not use the default partitions and wish to
replace them with your
own, use the arrow keys to select the first partition, and press
<keycap>D</keycap> to delete it. Repeat this to delete all the
suggested partitions.</para>
<para>To create the first partition (<literal>a</literal>, mounted as
<filename>/</filename> &mdash; root), make sure the proper disk slice at the top of
the screen is selected and press <keycap>C</keycap>. A dialog box
will appear prompting you for the size of the new partition (as shown
in <xref linkend="sysinstall-label-add">). You can enter the size as
the number of disk blocks you want to use, or as a
number followed by either <literal>M</literal> for megabytes,
<literal>G</literal> for gigabytes, or <literal>C</literal> for
cylinders.</para>
<note><para>Beginning with FreeBSD&nbsp;5.X, users can: select
<acronym>UFS2</acronym> using the <literal>Custom Newfs</literal>
(<keycap>Z</keycap>) option, create labels with
<literal>Auto Defaults</literal> and modify them with the <literal>Custom Newfs</literal> option or
add <option>-O 2</option> during the regular creation period.
Do not forget to add <option>-U</option> for SoftUpdates if you use the <literal>Custom Newfs</literal>
option!</para></note>
<figure id="sysinstall-label-add">
<title>Free Space for Root Partition</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/disklabel-root1" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>The default size shown will create a partition that takes up the
rest of the slice. If you are using the partition sizes described
in the earlier example, then delete the existing figure using
<keycap>Backspace</keycap>, and then type in
<userinput>64M</userinput>, as shown in
<xref linkend="sysinstall-label-add2">. Then press
&gui.ok;.</para>
<figure id="sysinstall-label-add2">
<title>Edit Root Partition Size</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/disklabel-root2" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Having chosen the partition's size you will then be asked whether
this partition will contain a filesystem or swap space. The dialog
box is shown in <xref linkend="sysinstall-label-type">. This first
partition will contain a filesystem, so check that
<guimenuitem>FS</guimenuitem> is selected and press
<keycap>Enter</keycap>.</para>
<figure id="sysinstall-label-type">
<title>Choose the Root Partition Type</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/disklabel-fs" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Finally, because you are creating a filesystem, you must tell
<application>Disklabel</application> where the filesystem is to be
mounted. The dialog box is shown in
<xref linkend="sysinstall-label-mount">. The root filesystem's mount
point is <filename>/</filename>, so type <userinput>/</userinput>, and
then press <keycap>Enter</keycap>.</para>
<figure id="sysinstall-label-mount">
<title>Choose the Root Mount Point</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/disklabel-root3" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>The display will then update to show you the newly created
partition. You should repeat this procedure for the other
partitions. When you create the swap partition, you will not be
prompted for the filesystem mount point, as swap partitions are never
mounted. When you create the final partition,
<filename>/usr</filename>, you can leave the suggested size as is, to
use the rest of the slice.</para>
<para>Your final FreeBSD DiskLabel Editor screen will appear similar to
<xref linkend="sysinstall-label4">, although your values chosen may
be different. Press <keycap>Q</keycap> to finish.</para>
<figure id="sysinstall-label4">
<title>Sysinstall Disklabel Editor</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/disklabel-ed2" format="PNG">
</imageobject>
</mediaobject>
</figure>
</sect2>
</sect1>
<sect1 id="install-choosing">
<title>Choosing What to Install</title>
<sect2 id="distset">
<title>Select the Distribution Set</title>
<para>Deciding which distribution set to install will depend largely
on the intended use of the system and the amount of disk space
available. The predefined options range from installing the
smallest possible configuration to everything. Those who are
new to &unix; and/or FreeBSD should almost certainly select one
of these canned options. Customizing a distribution set is
typically for the more experienced user.</para>
<para>Press <keycap>F1</keycap> for more information on the
distribution set options and what they contain. When finished
reviewing the help, pressing <keycap>Enter</keycap> will return
to the Select Distributions Menu.</para>
<para>If a graphical user interface is desired then a distribution
set that is preceded by an <literal>X</literal> should be
chosen. The configuration of the X server and selection of a default
desktop must be done after the installation of &os;. More
information regarding the configuration of a X server can be
found in <xref linkend="x11">.</para>
<para>The default version of X11 that is installed depends on the
version of FreeBSD that you are installing. For FreeBSD versions
prior to 5.3, <application>&xfree86;&nbsp;4.X</application> is installed. For &os;&nbsp;5.3 and later,
<application>&xorg;</application> is the default.</para>
<para>If compiling a custom kernel is anticipated, select an option
which includes the source code. For more information on why a
custom kernel should be built or how to build a custom kernel, see
<xref linkend="kernelconfig">.</para>
<para>Obviously, the most versatile system is one that includes
everything. If there is adequate disk space, select
<guimenuitem>All</guimenuitem> as shown in
<xref linkend="distribution-set1"> by using the arrow keys and
press <keycap>Enter</keycap>. If there is a concern about disk
space consider using an option that is more suitable for the
situation.
Do not fret over the perfect choice, as other distributions can be
added after installation.</para>
<figure id="distribution-set1">
<title>Choose Distributions</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/dist-set" format="PNG">
</imageobject>
</mediaobject>
</figure>
</sect2>
<sect2 id="portscol">
<title>Installing the Ports Collection</title>
<para>After selecting the desired distribution, an opportunity to
install the FreeBSD Ports Collection is presented. The ports
collection is an easy and convenient way to install software.
The ports collection does not contain the source code necessary
to compile the software. Instead, it is a collection of files which
automates the downloading, compiling and installation
of third-party software packages.
<xref linkend="ports"> discusses how to use the ports
collection.</para>
<para>The installation program does not check to see if you have
adequate space. Select this option only if you have
adequate hard disk space. As of FreeBSD &rel.current;, the FreeBSD
Ports Collection takes up about &ports.size; of disk space.
You can safely assume a larger value for more recent versions
of FreeBSD.</para>
<screen> User Confirmation Requested
Would you like to install the FreeBSD ports collection?
This will give you ready access to over &os.numports; ported software packages,
at a cost of around &ports.size; of disk space when "clean" and possibly much
more than that if a lot of the distribution tarballs are loaded
(unless you have the extra CDs from a FreeBSD CD/DVD distribution
available and can mount it on /cdrom, in which case this is far less
of a problem).
The ports collection is a very valuable resource and well worth having
on your /usr partition, so it is advisable to say Yes to this option.
For more information on the ports collection & the latest ports,
visit:
http://www.FreeBSD.org/ports
[ Yes ] No</screen>
<para>Select &gui.yes; with the arrow keys to
install the ports collection or &gui.no; to
skip this option. Press <keycap>Enter</keycap> to continue.
The Choose Distributions menu will redisplay.</para>
<figure id="distribution-set2">
<title>Confirm Distributions</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/dist-set2" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>If satisfied with the options, select
<guimenuitem>Exit</guimenuitem> with the arrow keys, ensure that
&gui.ok; is highlighted, and pressing
<keycap>Enter</keycap> to continue.</para>
</sect2>
</sect1>
<sect1 id="install-media">
<title>Choosing Your Installation Media</title>
<para>If Installing from a CDROM or DVD, use the arrow keys to highlight
<guimenuitem>Install from a FreeBSD CD/DVD</guimenuitem>. Ensure
that &gui.ok; is highlighted, then press
<keycap>Enter</keycap> to proceed with the installation.</para>
<para>For other methods of installation, select the appropriate
option and follow the instructions.</para>
<para>Press <keycap>F1</keycap> to display the Online Help for
installation media. Press <keycap>Enter</keycap> to return
to the media selection menu.</para>
<figure id="choose-media">
<title>Choose Installation Media</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/media" format="PNG">
</imageobject>
</mediaobject>
</figure>
<note>
<title>FTP Installation Modes</title>
<indexterm>
<primary>installation</primary>
<secondary>network</secondary>
<tertiary>FTP</tertiary>
</indexterm>
<para>There are three FTP installation modes you can choose from:
active FTP, passive FTP, or via a HTTP proxy.</para>
<variablelist>
<varlistentry>
<term>FTP Active: <guimenuitem>Install from an FTP
server</guimenuitem></term>
<listitem>
<para>This option will make all FTP transfers
use <quote>Active</quote>
mode. This will not work through firewalls, but will
often work with older FTP servers that do not support
passive mode. If your connection hangs with passive
mode (the default), try active!</para>
</listitem>
</varlistentry>
<varlistentry>
<term>FTP Passive: <guimenuitem>Install from an FTP server through a
firewall</guimenuitem></term>
<listitem>
<indexterm>
<primary>FTP</primary>
<secondary>passive mode</secondary>
</indexterm>
<para>This option instructs <application>sysinstall</application> to use
<quote>Passive</quote> mode for all FTP operations.
This allows the user to pass through firewalls
that do not allow incoming connections on random TCP ports.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>FTP via a HTTP proxy: <guimenuitem>Install from an FTP server
through a http proxy</guimenuitem></term>
<listitem>
<indexterm>
<primary>FTP</primary>
<secondary>via a HTTP proxy</secondary>
</indexterm>
<para>This option instructs <application>sysinstall</application> to use the HTTP
protocol (like a web browser) to connect to a proxy
for all FTP operations. The proxy will translate
the requests and send them to the FTP server.
This allows the user to pass through firewalls
that do not allow FTP at all, but offer a HTTP
proxy.
In this case, you have to specify the proxy in
addition to the FTP server.</para>
</listitem>
</varlistentry>
</variablelist>
<para>For a proxy FTP server, you should usually give the name of the
server you really want as a part of the username, after an
<quote>@</quote> sign. The proxy server then <quote>fakes</quote>
the real server. For example, assuming you want to install from
<hostid role="fqdn">ftp.FreeBSD.org</hostid>, using the proxy FTP
server <hostid role="fqdn">foo.example.com</hostid>, listening on port
1024.</para>
<para>In this case, you go to the options menu, set the FTP username
to <literal>ftp@ftp.FreeBSD.org</literal>, and the password to your
email address. As your installation media, you specify FTP (or
passive FTP, if the proxy supports it), and the URL
<literal>ftp://foo.example.com:1234/pub/FreeBSD</literal>.</para>
<para>Since <filename>/pub/FreeBSD</filename> from
<hostid role="fqdn">ftp.FreeBSD.org</hostid> is proxied under
<hostid role="fqdn">foo.example.com</hostid>, you are able to install
from <emphasis>that</emphasis> machine (which will fetch the files
from <hostid role="fqdn">ftp.FreeBSD.org</hostid> as your
installation requests them).</para>
</note>
</sect1>
<sect1 id="install-final-warning">
<title>Committing to the Installation</title>
<para>The installation can now proceed if desired. This is also
the last chance for aborting the installation to prevent changes
to the hard drive.</para>
<screen> User Confirmation Requested
Last Chance! Are you SURE you want to continue the installation?
If you're running this on a disk with data you wish to save then WE
STRONGLY ENCOURAGE YOU TO MAKE PROPER BACKUPS before proceeding!
We can take no responsibility for lost disk contents!
[ Yes ] No</screen>
<para>Select &gui.yes; and press
<keycap>Enter</keycap> to proceed.</para>
<para>The installation time will vary according to the distribution
chosen, installation media, and the speed of the computer.
There will be a series of
messages displayed indicating the status.</para>
<para>The installation is complete when the following message is
displayed:</para>
<screen> Message
Congratulations! You now have FreeBSD installed on your system.
We will now move on to the final configuration questions.
For any option you do not wish to configure, simply select No.
If you wish to re-enter this utility after the system is up, you may
do so by typing: /stand/sysinstall .
[ OK ]
[ Press enter to continue ]</screen>
<para>Press <keycap>Enter</keycap> to proceed with post-installation
configurations.</para>
<para>Selecting &gui.no; and pressing
<keycap>Enter</keycap> will abort
the installation so no changes will be made to your system. The
following message will appear:</para>
<screen> Message
Installation complete with some errors. You may wish to scroll
through the debugging messages on VTY1 with the scroll-lock feature.
You can also choose "No" at the next prompt and go back into the
installation menus to retry whichever operations have failed.
[ OK ]</screen>
<para>This message is generated because nothing was installed.
Pressing <keycap>Enter</keycap> will return to the
Main Installation Menu to exit the installation.</para>
</sect1>
<sect1 id="install-post">
<title>Post-installation</title>
<para>Configuration of various options follows the successful
installation. An option can be configured by re-entering the
configuration options before booting the new FreeBSD
system or after installation using
<command>/stand/sysinstall</command> and selecting
<guimenuitem>Configure</guimenuitem>.</para>
<sect2 id="inst-network-dev">
<title>Network Device Configuration</title>
<para>If you previously configured PPP for an FTP install, this screen
will not display and can be configured later as described
above.</para>
<para>For detailed information on Local Area Networks and
configuring FreeBSD as a gateway/router refer to the
<link linkend="advanced-networking">Advanced Networking</link>
chapter.</para>
<screen> User Confirmation Requested
Would you like to configure any Ethernet or SLIP/PPP network devices?
[ Yes ] No</screen>
<para>To configure a network device, select
&gui.yes; and press <keycap>Enter</keycap>.
Otherwise, select &gui.no; to continue.</para>
<figure id="ed-config1">
<title>Selecting an Ethernet Device</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/ed0-conf" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Select the interface to be configured with the arrow keys and press
<keycap>Enter</keycap>.</para>
<screen> User Confirmation Requested
Do you want to try IPv6 configuration of the interface?
Yes [ No ]</screen>
<para>In this private local area network, the current Internet
type protocol (<acronym>IPv4</acronym>) was sufficient and &gui.no;
was selected with the arrow keys and <keycap>Enter</keycap>
pressed.</para>
<para>If you are connected to an existing <acronym>IPv6</acronym> network
with an <acronym>RA</acronym> server, then choose
&gui.yes; and press <keycap>Enter</keycap>.
It will take several seconds to scan for RA servers.</para>
<screen> User Confirmation Requested
Do you want to try DHCP configuration of the interface?
Yes [ No ]</screen>
<para>If DHCP (Dynamic Host Configuration Protocol) is not required
select &gui.no; with the arrow keys and press
<keycap>Enter</keycap>.</para>
<para>Selecting &gui.yes; will execute
<application>dhclient</application>, and if successful, will fill
in the network configuration information automatically. Refer to
<xref linkend="network-dhcp"> for more information.</para>
<para>The following Network Configuration screen shows the
configuration of the Ethernet device for a system that will act
as the gateway for a Local Area Network.</para>
<figure id="ed-config2">
<title>Set Network Configuration for ed0</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/ed0-conf2" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Use <keycap>Tab</keycap> to select the information fields and
fill in appropriate information:</para>
<variablelist>
<varlistentry>
<term>Host</term>
<listitem>
<para>The fully-qualified hostname, such as <hostid role="fqdn">k6-2.example.com</hostid> in
this case.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Domain</term>
<listitem>
<para>The name of the domain that your machine is
in, such as <hostid role="domainname">example.com</hostid> for this case.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>IPv4 Gateway</term>
<listitem>
<para>IP address of host forwarding packets to non-local
destinations. You must fill this in if the machine is a node
on the network. <emphasis>Leave this field blank</emphasis>
if the machine is the gateway to the Internet for the
network. The IPv4 Gateway is also known as the default
gateway or default route.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Name server</term>
<listitem>
<para>IP address of your local DNS server. There is no local
DNS server on this private local area network so the IP
address of the provider's DNS server
(<hostid role="ipaddr">208.163.10.2</hostid>) was used.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>IPv4 address</term>
<listitem>
<para>The IP address to be used for this interface was
<hostid role="ipaddr">192.168.0.1</hostid></para>
</listitem>
</varlistentry>
<varlistentry>
<term>Netmask</term>
<listitem>
<para>The address block being used for this local area
network is a Class C block
(<hostid role="ipaddr">192.168.0.0</hostid> -
<hostid role="ipaddr">192.168.255.255</hostid>).
The default netmask is for a Class C network
(<hostid role="netmask">255.255.255.0</hostid>).</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Extra options to ifconfig</term>
<listitem>
<para>Any interface-specific options to <command>ifconfig</command>
you would like to add. There were none in this case.</para>
</listitem>
</varlistentry>
</variablelist>
<para>Use <keycap>Tab</keycap> to select &gui.ok;
when finished and press <keycap>Enter</keycap>.</para>
<screen> User Confirmation Requested
Would you like to Bring Up the ed0 interface right now?
[ Yes ] No</screen>
<para>Choosing &gui.yes; and pressing
<keycap>Enter</keycap> will bring
the machine up on the network and be ready for use. However,
this does not accomplish much during installation, since
the machine still needs to be rebooted.</para>
</sect2>
<sect2 id="gateway">
<title>Configure Gateway</title>
<screen> User Confirmation Requested
Do you want this machine to function as a network gateway?
[ Yes ] No</screen>
<para>If the machine will be acting as the gateway for a local area
network and forwarding packets between other machines then select
&gui.yes; and press <keycap>Enter</keycap>.
If the machine is a node on a network then
select &gui.no; and press
<keycap>Enter</keycap> to continue.</para>
</sect2>
<sect2 id="inetd-services">
<title>Configure Internet Services</title>
<screen> User Confirmation Requested
Do you want to configure inetd and the network services that it provides?
Yes [ No ]</screen>
<para>If &gui.no; is selected, various services
such <application>telnetd</application> will not be enabled. This
means that remote users will not be able to
<application>telnet</application> into this machine. Local users
will be still be able to access remote machines with
<application>telnet</application>.</para>
<para>These services can be enabled after installation by editing
<filename>/etc/inetd.conf</filename> with your favorite text editor.
See <xref linkend="network-inetd-overview"> for more information.</para>
<para>Select &gui.yes; if you wish to
configure these services during install. An additional
confirmation will display:</para>
<screen> User Confirmation Requested
The Internet Super Server (inetd) allows a number of simple Internet
services to be enabled, including finger, ftp and telnetd. Enabling
these services may increase risk of security problems by increasing
the exposure of your system.
With this in mind, do you wish to enable inetd?
[ Yes ] No</screen>
<para>Select &gui.yes; to continue.</para>
<screen> User Confirmation Requested
inetd(8) relies on its configuration file, /etc/inetd.conf, to determine
which of its Internet services will be available. The default FreeBSD
inetd.conf(5) leaves all services disabled by default, so they must be
specifically enabled in the configuration file before they will
function, even once inetd(8) is enabled. Note that services for
IPv6 must be separately enabled from IPv4 services.
Select [Yes] now to invoke an editor on /etc/inetd.conf, or [No] to
use the current settings.
[ Yes ] No</screen>
<para>Selecting &gui.yes; will allow adding
services by deleting the <literal>#</literal> at the beginning
of a line.</para>
<figure id="inetd-edit">
<title>Editing <filename>inetd.conf</filename></title>
<mediaobject>
<imageobject>
<imagedata fileref="install/edit-inetd-conf" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>After adding the desired services, pressing <keycap>Esc</keycap>
will display a menu which will allow exiting and saving
the changes.</para>
</sect2>
<sect2 id="ftpanon">
<title>Anonymous FTP</title>
<screen> User Confirmation Requested
Do you want to have anonymous FTP access to this machine?
Yes [ No ]</screen>
<sect3 id="deny-anon">
<title>Deny Anonymous FTP</title>
<para>Selecting the default &gui.no; and pressing
<keycap>Enter</keycap> will still allow users who have accounts
with passwords to use FTP to access the machine.</para>
</sect3>
<sect3 id="ftpallow">
<title>Allow Anonymous FTP</title>
<para>Anyone can access your machine if you elect to allow
anonymous FTP connections. The security implications should be
considered before enabling this option. For more information
about security see <xref linkend="security">.</para>
<para>To allow anonymous FTP, use the arrow keys to select
&gui.yes; and press <keycap>Enter</keycap>.
The following screen (or similar) will display:</para>
<figure id="anon-ftp2">
<title>Default Anonymous FTP Configuration</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/ftp-anon1" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Pressing <keycap>F1</keycap> will display the help:</para>
<screen>This screen allows you to configure the anonymous FTP user.
The following configuration values are editable:
UID: The user ID you wish to assign to the anonymous FTP user.
All files uploaded will be owned by this ID.
Group: Which group you wish the anonymous FTP user to be in.
Comment: String describing this user in /etc/passwd
FTP Root Directory:
Where files available for anonymous FTP will be kept.
Upload subdirectory:
Where files uploaded by anonymous FTP users will go.</screen>
<para>The ftp root directory will be put in <filename>/var</filename>
by default. If you do not have enough room there for the
anticipated FTP needs, the <filename>/usr</filename> directory
could be used by setting the FTP Root Directory to
<filename>/usr/ftp</filename>.</para>
<para>When you are satisfied with the values, press
<keycap>Enter</keycap> to continue.</para>
<screen> User Confirmation Requested
Create a welcome message file for anonymous FTP users?
[ Yes ] No</screen>
<para>If you select &gui.yes; and press
<keycap>Enter</keycap>, an editor will automatically start
allowing you to edit the message.</para>
<figure id="anon-ftp4">
<title>Edit the FTP Welcome Message</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/ftp-anon2" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>This is a text editor called <command>ee</command>. Use the
instructions to change the message or change the message later
using a text editor of your choice. Note the file name/location
at the bottom of the editor screen.</para>
<para>Press <keycap>Esc</keycap> and a pop-up menu will default
to <guimenuitem>a) leave editor</guimenuitem>. Press
<keycap>Enter</keycap> to exit and continue. Press
<keycap>Enter</keycap> again to save changes if you made
any.</para>
</sect3>
</sect2>
<sect2 id="nfsconf">
<title>Configure Network File System</title>
<para>Network File System (NFS) allows sharing of files across a
network. A machine can be configured as a server, a client, or
both. Refer to <xref linkend="network-nfs"> for a more information.</para>
<sect3 id="nsf-server-options">
<title>NFS Server</title>
<screen> User Confirmation Requested
Do you want to configure this machine as an NFS server?
Yes [ No ]</screen>
<para>If there is no need for a Network File System server,
select &gui.no; and press
<keycap>Enter</keycap>.</para>
<para>If &gui.yes; is chosen, a message will
pop-up indicating that the <filename>exports</filename> file must be
created.</para>
<screen> Message
Operating as an NFS server means that you must first configure an
/etc/exports file to indicate which hosts are allowed certain kinds of
access to your local filesystems.
Press [Enter] now to invoke an editor on /etc/exports
[ OK ]</screen>
<para>Press <keycap>Enter</keycap> to continue. A text editor will
start allowing the <filename>exports</filename> file to be created
and edited.</para>
<figure id="nfs-server-edit">
<title>Editing <filename>exports</filename></title>
<mediaobject>
<imageobject>
<imagedata fileref="install/nfs-server-edit" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Use the instructions to add the actual exported filesystems
now or later using a text editor of your choice. Note the
file name/location at the bottom of the editor screen.</para>
<para>Press <keycap>Esc</keycap> and a pop-up menu will default to
<guimenuitem>a) leave editor</guimenuitem>. Press
<keycap>Enter</keycap> to exit and continue.</para>
</sect3>
<sect3 id="nfs-client-options">
<title>NFS Client</title>
<para>The NFS client allows your machine to access NFS servers.</para>
<screen> User Confirmation Requested
Do you want to configure this machine as an NFS client?
Yes [ No ]</screen>
<para>With the arrow keys, select &gui.yes;
or &gui.no; as appropriate and
press <keycap>Enter</keycap>.</para>
</sect3>
</sect2>
<sect2 id="securityprofile">
<title>Security Profile</title>
<para>A <quote>security profile</quote> is a set of
configuration options that attempts to achieve the desired
ratio of security to convenience by enabling and disabling
certain programs and other settings. The more severe the
security profile, the fewer programs will be enabled by
default. This is one of the basic principles of security: do
not run anything except what you must.</para>
<para>Please note that the security profile is just a default
setting. All programs can be enabled and disabled after you
have installed FreeBSD by editing or adding the appropriate
line(s) to <filename>/etc/rc.conf</filename>. For more
information, please see the &man.rc.conf.5; manual
page.</para>
<para>The following table describes what each of the security
profiles does. The columns are the choices you have for a
security profile, and the rows are the program or feature that
the profile enables or disables.</para>
<table>
<title>Possible Security Profiles</title>
<tgroup cols=3>
<thead>
<row>
<entry></entry>
<entry>Extreme</entry>
<entry>Moderate</entry>
</row>
</thead>
<tbody>
<row>
<entry>&man.sendmail.8;</entry>
<entry>NO</entry>
<entry>YES</entry>
</row>
<row>
<entry>&man.sshd.8;</entry>
<entry>NO</entry>
<entry>YES</entry>
</row>
<row>
<entry>&man.portmap.8;</entry>
<entry>NO</entry>
<entry>MAYBE
<footnote>
<para>The portmapper is enabled if the machine has
been configured as an NFS client or server earlier
in the installation.</para>
</footnote>
</entry>
</row>
<row>
<entry>NFS server</entry>
<entry>NO</entry>
<entry>YES</entry>
</row>
<row>
<entry>&man.securelevel.8;</entry>
<entry>YES
<footnote>
<para>If you choose a security profile that sets the
securelevel to <quote>Extreme</quote> or
<quote>High</quote>, you must be aware of the
implications. Please read the &man.init.8;
manual page and pay particular attention to the
meanings of the security levels, or you may have
significant trouble later!</para>
</footnote>
</entry>
<entry>NO</entry>
</row>
</tbody>
</tgroup>
</table>
<screen> User Confirmation Requested
Do you want to select a default security profile for this host (select
No for "medium" security)?
[ Yes ] No</screen>
<para>Selecting &gui.no; and pressing
<keycap>Enter</keycap> will set the security profile to medium.</para>
<para>Selecting &gui.yes; and pressing
<keycap>Enter</keycap> will allow selecting a different security
profile.</para>
<figure id="security-profile">
<title>Security Profile Options</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/security" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Press <keycap>F1</keycap> to display the help. Press
<keycap>Enter</keycap> to return to selection menu.</para>
<para>Use the arrow keys to choose <guimenuitem>Medium</guimenuitem>
unless your are sure that another level is required for your needs.
With &gui.ok; highlighted, press
<keycap>Enter</keycap>.</para>
<para>An appropriate confirmation message will display depending on
which security setting was chosen.</para>
<screen> Message
Moderate security settings have been selected.
Sendmail and SSHd have been enabled, securelevels are
disabled, and NFS server setting have been left intact.
PLEASE NOTE that this still does not save you from having
to properly secure your system in other ways or exercise
due diligence in your administration, this simply picks
a standard set of out-of-box defaults to start with.
To change any of these settings later, edit /etc/rc.conf
[OK]</screen>
<screen> Message
Extreme security settings have been selected.
Sendmail, SSHd, and NFS services have been disabled, and
securelevels have been enabled.
PLEASE NOTE that this still does not save you from having
to properly secure your system in other ways or exercise
due diligence in your administration, this simply picks
a more secure set of out-of-box defaults to start with.
To change any of these settings later, edit /etc/rc.conf
[OK]</screen>
<para>Press <keycap>Enter</keycap> to continue with the
post-installation configuration.</para>
<warning>
<para>The security profile is not a silver bullet! Even if
you use the extreme setting, you need to keep up with
security issues by reading an appropriate mailing
list (<xref linkend="eresources-mail">),
using good passwords and passphrases, and
generally adhering to good security practices. It simply
sets up the desired security to convenience ratio out of the
box.</para>
</warning>
</sect2>
<sect2 id="console">
<title>System Console Settings</title>
<para>There are several options available to customize the system
console.</para>
<screen> User Confirmation Requested
Would you like to customize your system console settings?
[ Yes ] No</screen>
<para>To view and configure the options, select
&gui.yes; and press
<keycap>Enter</keycap>.</para>
<figure id="saver-options">
<title>System Console Configuration Options</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/console-saver1" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>A commonly used option is the screen saver. Use the arrow keys
to select <guimenuitem>Saver</guimenuitem> and then press
<keycap>Enter</keycap>.</para>
<figure id="saver-select">
<title>Screen Saver Options</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/console-saver2" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Select the desired screen saver using the arrow keys
and then press <keycap>Enter</keycap>. The System Console
Configuration menu will redisplay.</para>
<para>The default time interval is 300 seconds. To change the time
interval, select <guimenuitem>Saver</guimenuitem> again. At the
Screen Saver Options menu, select <guimenuitem>Timeout</guimenuitem>
using the arrow keys and press <keycap>Enter</keycap>. A pop-up
menu will appear:</para>
<figure id="saver-timeout">
<title>Screen Saver Timeout</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/console-saver3" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>The value can be changed, then select &gui.ok;
and press <keycap>Enter</keycap> to return to the System Console
Configuration menu.</para>
<figure id="saver-exit">
<title>System Console Configuration Exit</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/console-saver4" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Selecting <guimenuitem>Exit</guimenuitem> and pressing
<keycap>Enter</keycap> will continue with the post-installation
configurations.</para>
</sect2>
<sect2 id="timezone">
<title>Setting the Time Zone</title>
<para>Setting the time zone for your machine will allow it to
automatically correct for any regional time changes and perform
other time zone related functions properly.</para>
<para>The example shown is for a machine located in the Eastern
time zone of the United States. Your selections will vary according
to your geographical location.</para>
<screen> User Confirmation Requested
Would you like to set this machine's time zone now?
[ Yes ] No</screen>
<para>Select &gui.yes; and press
<keycap>Enter</keycap> to set the time zone.</para>
<screen> User Confirmation Requested
Is this machine's CMOS clock set to UTC? If it is set to local time
or you don't know, please choose NO here!
Yes [ No ]</screen>
<para>Select &gui.yes;
or &gui.no; according to how the machine's
clock is configured and press <keycap>Enter</keycap>.</para>
<figure id="set-timezone-region">
<title>Select Your Region</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/timezone1" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>The appropriate region is selected using the arrow keys
and then pressing <keycap>Enter</keycap>.</para>
<figure id="set-timezone-country">
<title>Select Your Country</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/timezone2" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Select the appropriate country using the arrow keys
and press <keycap>Enter</keycap>.</para>
<figure id="set-timezone-locality">
<title>Select Your Time Zone</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/timezone3" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>The appropriate time zone is selected using the arrow
keys and pressing <keycap>Enter</keycap>.</para>
<screen> Confirmation
Does the abbreviation 'EDT' look reasonable?
[ Yes ] No</screen>
<para>Confirm the abbreviation for the time zone is correct.
If it looks okay, press <keycap>Enter</keycap> to continue with
the post-installation configuration.</para>
</sect2>
<sect2 id="linuxcomp">
<title>Linux Compatibility</title>
<screen> User Confirmation Requested
Would you like to enable Linux binary compatibility?
[ Yes ] No</screen>
<para>Selecting &gui.yes; and pressing
<keycap>Enter</keycap> will allow
running Linux software on FreeBSD. The install will add
the appropriate packages for Linux compatibility.</para>
<para>If installing by FTP, the machine will need to be connected to
the Internet. Sometimes a remote ftp site will not have all the
distributions like the Linux binary compatibility. This can
be installed later if necessary.</para>
</sect2>
<sect2 id="mouse">
<title>Mouse Settings</title>
<para>This option will allow you to cut and paste text in the
console and user programs with a 3-button mouse. If using a 2-button
mouse, refer to manual page, &man.moused.8;, after installation for
details on emulating the 3-button style. This example depicts a
non-USB mouse configuration (such as a PS/2 or COM port mouse):</para>
<screen> User Confirmation Requested
Does this system have a non-USB mouse attached to it?
[ Yes ] No </screen>
<para>Select &gui.yes; for a non-USB mouse or
&gui.no; for a USB mouse and press
<keycap>Enter</keycap>.</para>
<figure id="mouse-protocol">
<title>Select Mouse Protocol Type</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/mouse1" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Use the arrow keys to select <guimenuitem>Type</guimenuitem> and
press <keycap>Enter</keycap>.</para>
<figure id="set-mouse-protocol">
<title>Set Mouse Protocol</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/mouse2" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>The mouse used in this example is a PS/2 type, so the default
<guimenuitem>Auto</guimenuitem> was appropriate. To change protocol,
use the arrow keys to select another option. Ensure that &gui.ok; is
highlighted and press <keycap>Enter</keycap> to exit this menu.</para>
<figure id="config-mouse-port">
<title>Configure Mouse Port</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/mouse3" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Use the arrow keys to select <guimenuitem>Port</guimenuitem> and
press <keycap>Enter</keycap>.</para>
<figure id="set-mouse-port">
<title>Setting the Mouse Port</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/mouse4" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>This system had a PS/2 mouse, so the default
<guimenuitem>PS/2</guimenuitem> was appropriate. To change the port,
use the arrow keys and then press <keycap>Enter</keycap>.</para>
<figure id="test-daemon">
<title>Enable the Mouse Daemon</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/mouse5" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Last, use the arrow keys to select
<guimenuitem>Enable</guimenuitem>, and press
<keycap>Enter</keycap> to enable and test the mouse
daemon.</para>
<figure id="test-mouse-daemon">
<title>Test the Mouse Daemon</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/mouse6" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Move the mouse around the screen and verify the cursor
shown responds properly. If it does, select
&gui.yes; and press <keycap>Enter</keycap>. If
not, the mouse has not been configured correctly &mdash; select
&gui.no; and try using different configuration
options.</para>
<para>Select <guimenuitem>Exit</guimenuitem> with the arrow keys
and press <keycap>Enter</keycap> to return to continue with the
post-installation configuration.</para>
</sect2>
<sect2 id="network-services">
<title>Configure Additional Network Services</title>
<para>Configuring network services can be a daunting
task for new users if they lack previous
knowledge in this area. Networking, including the Internet,
is critical to all modern operating systems including &os;;
as a result, it is very useful to have some understanding
&os;'s extensive networking capabilities. Doing this
during the installation will ensure users have some
understanding of the various services available to them.</para>
<para>Network services are programs that accept input from
anywhere on the network. Every effort is made to make sure
these programs will not do anything <quote>harmful</quote>.
Unfortunately, programmers are not perfect and through time
there have been cases where bugs in network services have been
exploited by attackers to do bad things. It is important that
you only enable the network services you know that you need. If
in doubt it is best if you do not enable a network service until
you find out that you do need it. You can always enable it
later by re-running <application>sysinstall</application> or by
using the features provided by the
<filename>/etc/rc.conf</filename> file.</para>
<para>Selecting the <guimenu>Networking</guimenu> option will display
a menu similar to the one below:</para>
<figure id="network-configuration">
<title>Network Configuration Upper-level</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/net-config-menu1" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>The first option, <guimenuitem>Interfaces</guimenuitem>, was previously covered during
the <xref linkend="inst-network-dev">, thus this option can
safely be ignored.</para>
<para>Selecting the <guimenuitem>AMD</guimenuitem> option adds
support for the <acronym>BSD</acronym> automatic mount utility.
This is usually used in conjunction with the
<acronym>NFS</acronym> protocol (see below)
for automatically mounting remote file systems.
No special configuration is required here.</para>
<para>Next in line is the <guimenuitem>AMD Flags</guimenuitem>
option. When selected, a menu will pop up for you
to enter specific <acronym>AMD</acronym> flags.
The menu already contains a set of default options:</para>
<screen>-a /.amd_mnt -l syslog /host /etc/amd.map /net /etc/amd.map</screen>
<para>The <option>-a</option> option sets the default mount
location which is specified here as
<filename>/.amd_mnt</filename>. The <option>-l</option>
option specifies the default <filename>log</filename> file;
however, when <literal>syslogd</literal> is used all log
activity will be sent to the system log daemon. The
<filename class="directory">/host</filename> directory is used
to mount an exported file system from a remote
host, while <filename class="directory">/net</filename>
directory is used to mount an exported file system from an
<acronym>IP</acronym> address. The
<filename>/etc/amd.map</filename> file defines the default
options for <acronym>AMD</acronym> exports.</para>
<para>The <guimenuitem>Anon FTP</guimenuitem> option permits anonymous
<acronym>FTP</acronym> connections. Select this option to
make this machine an anonymous <acronym>FTP</acronym> server.
Be aware of the security risks involved with this option.
Another menu will be displayed to explain the security risks
and configuration in depth.</para>
<para>The <guimenuitem>Gateway</guimenuitem> configuration menu will set
the machine up to be a gateway as explained previously. This
can be used to unset the <guimenuitem>Gateway</guimenuitem> option if you accidentally
selected it during the installation process.</para>
<para>The <guimenuitem>Inetd</guimenuitem> option can be used to configure
or completely disable the &man.inetd.8; daemon as discussed
above.</para>
<para>The <guimenuitem>Mail</guimenuitem> option is used to configure the system's
default <acronym>MTA</acronym> or Mail Transfer Agent.
Selecting this option will bring up the following menu:</para>
<figure id="mta-selection">
<title>Select a default MTA</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/mta-main" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Here you are offered a choice as to which
<acronym>MTA</acronym> to install
and set as the default. An <acronym>MTA</acronym> is nothing
more than a mail server which delivers email to users on the
system or the Internet.</para>
<para>Selecting <guimenuitem>Sendmail</guimenuitem> will install
the popular <application>sendmail</application> server which
is the &os; default. The <guimenuitem>Sendmail local</guimenuitem> option
will set <application>sendmail</application> to be the default
<acronym>MTA</acronym>, but disable its ability to receive
incoming email from the Internet. The other options here,
<guimenuitem>Postfix</guimenuitem> and
<guimenuitem>Exim</guimenuitem> act similar to
<guimenuitem>Sendmail</guimenuitem>. They both deliver
email; however, some users prefer these alternatives to the
<application>sendmail</application>
<acronym>MTA</acronym>.</para>
<para>After selecting an <acronym>MTA</acronym>, or choosing
not to select an MTA, the network configuration menu will appear
with the next option being <guimenuitem>NFS client</guimenuitem>.</para>
<para>The <guimenuitem>NFS client</guimenuitem> option will
configure the system to communicate with a server via
<acronym>NFS</acronym>. An <acronym>NFS</acronym> server
makes file systems available to other machines on the
network via the <acronym>NFS</acronym> protocol. If this is
a stand alone machine, this option can remain unselected.
The system may require more configuration later; see
<xref linkend="network-nfs"> for more
information about client and server configuration.</para>
<para>Below that option is the <guimenuitem>NFS server</guimenuitem>
option, permitting you to set the system up as an
<acronym>NFS</acronym> server. This adds the required
information to start up the <acronym>RPC</acronym> remote
procedure call services. <acronym>RPC</acronym> is used to
coordinate connections between hosts and programs.</para>
<para>Next in line is the <guimenuitem>Ntpdate</guimenuitem> option,
which deals with time synchronization. When selected, a menu
like the one below shows up:</para>
<figure id="Ntpdate-config">
<title>Ntpdate Configuration</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/ntp-config" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>From this menu, select the server which is the closest
to your location. Selecting a close one will make the time
synchronization more accurate as a server further from your
location may have more connection latency.</para>
<para>The next option is the <acronym>PCNFSD</acronym> selection.
This option will install the
<filename role="package">net/pcnfsd</filename> package from
the ports collection. This is a useful utility which provides
<acronym>NFS</acronym> authentication services for systems which
are unable to provide their own, such as Microsoft's
&ms-dos; operating system.</para>
<para>Now you must scroll down a bit to see the other
options:</para>
<figure id="Network-configuration-cont">
<title>Network Configuration Lower-level</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/net-config-menu2" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>The &man.rpcbind.8;, &man.rpc.statd.8;, and
&man.rpc.lockd.8; utilities are all used for Remote Procedure
Calls (<acronym>RPC</acronym>).
The <command>rpcbind</command> utility manages communication
between <acronym>NFS</acronym> servers and clients, and is
required for <acronym>NFS</acronym> servers to operate
correctly. The <application>rpc.statd</application> daemon interacts
with the <application>rpc.statd</application> daemon on other hosts to
provide status monitoring. The reported status is usually held
in the <filename>/var/db/statd.status</filename> file. The
next option listed here is the <guimenuitem>rpc.lockd</guimenuitem>
option, which, when selected, will provide file locking
services. This is usually used with
<application>rpc.statd</application> to monitor what hosts are
requesting locks and how frequently they request them.
While these last two options are marvelous for debugging, they
are not required for <acronym>NFS</acronym> servers and clients
to operate correctly.</para>
<para>As you progress down the list the next item here is
<guimenuitem>Routed</guimenuitem>, which is the routing daemon. The
&man.routed.8; utility manages network routing tables,
discovers multicast routers, and supplies a copy of the routing
tables to any physically connected host on the network upon
request. This is mainly used for machines which act as a
gateway for the local network. When selected, a menu will be
presented requesting the default location of the utility.
The default location is already defined for you and can be
selected with the <keycap>Enter</keycap> key. You will then
be presented with yet another menu, this time asking for the
flags you wish to pass on to <application>routed</application>. The
default is <option>-q</option> and it should already appear
on the screen.</para>
<para>Next in line is the <guimenuitem>Rwhod</guimenuitem> option which,
when selected, will start the &man.rwhod.8; daemon
during system initialization. The <command>rwhod</command>
utility broadcasts system messages across the network
periodically, or collects them when in <quote>consumer</quote>
mode. More information can be found in the &man.ruptime.1; and
&man.rwho.1; manual pages.</para>
<para>The next to the last option in the list is for the
&man.sshd.8; daemon. This is the secure shell server for
<application>OpenSSH</application> and it is highly recommended
over the standard <application>telnet</application> and
<acronym>FTP</acronym> servers. The <application>sshd</application>
server is used to create a secure connection from one host to
another by using encrypted connections.</para>
<para>Finally there is the <guimenuitem>TCP Extensions</guimenuitem>
option. This enables the <acronym>TCP</acronym> Extensions
defined in <acronym>RFC</acronym>&nbsp;1323 and
<acronym>RFC</acronym>&nbsp;1644. While on many hosts this can
speed up connections, it can also cause some connections to be
dropped. It is not recommended for servers, but may be
beneficial for stand alone machines.</para>
<para>Now that you have configured the network services, you can
scroll up to the very top item which is <guimenuitem>Exit</guimenuitem>
and continue on to the next configuration section.</para>
</sect2>
<sect2 id="x-server">
<title>Configure X Server</title>
<note>
<para>As of &os;&nbsp;5.3-RELEASE, the X server configuration
facility has been removed from
<application>sysinstall</application>, you have to install
and configure the X server after the installation of &os;.
More information regarding the installation and the
configuration of a X server can be found in <xref
linkend="x11">. You can skip this section if you are not
installing a &os; version prior to 5.3-RELEASE.</para>
</note>
<para>In order to use a graphical user interface such as
<application>KDE</application>, <application>GNOME</application>,
or others, the X server will need to be configured.</para>
<note>
<para>In order to run <application>&xfree86;</application> as a
non <username>root</username> user you will need to
have <filename role="package">x11/wrapper</filename> installed.
This is installed by default beginning with FreeBSD 4.7. For
earlier versions this can be added
from the Package Selection menu.</para>
</note>
<para>To see whether your video card is supported, check the
<ulink url="http://www.xfree86.org/">&xfree86;</ulink> web site.</para>
<screen> User Confirmation Requested
Would you like to configure your X server at this time?
[ Yes ] No</screen>
<warning>
<para>It is necessary to know your monitor specifications and
video card information. Equipment damage can occur if settings
are incorrect. If you do not have this information, select
&gui.no; and perform the configuration
after installation when you have the information using
<command>/stand/sysinstall</command>, selecting
<guimenuitem>Configure</guimenuitem> and then
<guimenuitem>XFree86</guimenuitem>. Improper configuration
of the X server at this time can leave the machine in a
frozen state. It is often advised to configure the X server
once the installation has completed.
</para>
</warning>
<para>If you have graphics card and monitor information, select
&gui.yes; and press <keycap>Enter</keycap>
to proceed with configuring the X server.</para>
<figure id="xserver2">
<title>Select Configuration Method Menu</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/xf86setup" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>There are several ways to configure the X server.
Use the arrow keys to select one of the methods and press
<keycap>Enter</keycap>. Be sure to read all instructions
carefully.</para>
<para>The <application>xf86cfg</application> and
<application>xf86cfg -textmode</application> methods may make the screen
go dark and take a few seconds to start. Be patient.</para>
<para>The following will illustrate the use of the
<application>xf86config</application> configuration tool. The
configuration choices you make will depend on the hardware in the
system so your choices will probably be different than those
shown:</para>
<screen> Message
You have configured and been running the mouse daemon.
Choose "/dev/sysmouse" as the mouse port and "SysMouse" or
"MouseSystems" as the mouse protocol in the X configuration utility.
[ OK ]
[ Press enter to continue ]</screen>
<para>This indicates that the mouse daemon previously configured has been
detected.
Press <keycap>Enter</keycap> to continue.</para>
<para>Starting <application>xf86config</application> will display
a brief introduction:</para>
<screen>This program will create a basic XF86Config file, based on menu selections you
make.
The XF86Config file usually resides in /usr/X11R6/etc/X11 or /etc/X11. A sample
XF86Config file is supplied with XFree86; it is configured for a standard
VGA card and monitor with 640x480 resolution. This program will ask for a
pathname when it is ready to write the file.
You can either take the sample XF86Config as a base and edit it for your
configuration, or let this program produce a base XF86Config file for your
configuration and fine-tune it.
Before continuing with this program, make sure you know what video card
you have, and preferably also the chipset it uses and the amount of video
memory on your video card. SuperProbe may be able to help with this.
Press enter to continue, or ctrl-c to abort.</screen>
<para>Pressing <keycap>Enter</keycap> will start the mouse
configuration. Be sure to follow the instructions and use
<quote>Mouse Systems</quote> as the mouse protocol and
<filename>/dev/sysmouse</filename> as the mouse port even if
using a PS/2 mouse is shown as an illustration.</para>
<screen>First specify a mouse protocol type. Choose one from the following list:
1. Microsoft compatible (2-button protocol)
2. Mouse Systems (3-button protocol) & FreeBSD moused protocol
3. Bus Mouse
4. PS/2 Mouse
5. Logitech Mouse (serial, old type, Logitech protocol)
6. Logitech MouseMan (Microsoft compatible)
7. MM Series
8. MM HitTablet
9. Microsoft IntelliMouse
If you have a two-button mouse, it is most likely of type 1, and if you have
a three-button mouse, it can probably support both protocol 1 and 2. There are
two main varieties of the latter type: mice with a switch to select the
protocol, and mice that default to 1 and require a button to be held at
boot-time to select protocol 2. Some mice can be convinced to do 2 by sending
a special sequence to the serial port (see the ClearDTR/ClearRTS options).
Enter a protocol number: 2
You have selected a Mouse Systems protocol mouse. If your mouse is normally
in Microsoft-compatible mode, enabling the ClearDTR and ClearRTS options
may cause it to switch to Mouse Systems mode when the server starts.
Please answer the following question with either 'y' or 'n'.
Do you want to enable ClearDTR and ClearRTS? n
You have selected a three-button mouse protocol. It is recommended that you
do not enable Emulate3Buttons, unless the third button doesn't work.
Please answer the following question with either 'y' or 'n'.
Do you want to enable Emulate3Buttons? y
Now give the full device name that the mouse is connected to, for example
/dev/tty00. Just pressing enter will use the default, /dev/mouse.
On FreeBSD, the default is /dev/sysmouse.
Mouse device: /dev/sysmouse</screen>
<para>The keyboard is the next item to be configured. A generic
101-key model is shown for illustration. Any name may be used
for the variant or simply press <keycap>Enter</keycap> to accept
the default value.</para>
<screen>Please select one of the following keyboard types that is the better
description of your keyboard. If nothing really matches,
choose 1 (Generic 101-key PC)
1 Generic 101-key PC
2 Generic 102-key (Intl) PC
3 Generic 104-key PC
4 Generic 105-key (Intl) PC
5 Dell 101-key PC
6 Everex STEPnote
7 Keytronic FlexPro
8 Microsoft Natural
9 Northgate OmniKey 101
10 Winbook Model XP5
11 Japanese 106-key
12 PC-98xx Series
13 Brazilian ABNT2
14 HP Internet
15 Logitech iTouch
16 Logitech Cordless Desktop Pro
17 Logitech Internet Keyboard
18 Logitech Internet Navigator Keyboard
19 Compaq Internet
20 Microsoft Natural Pro
21 Genius Comfy KB-16M
22 IBM Rapid Access
23 IBM Rapid Access II
24 Chicony Internet Keyboard
25 Dell Internet Keyboard
Enter a number to choose the keyboard.
1
Please select the layout corresponding to your keyboard
1 U.S. English
2 U.S. English w/ ISO9995-3
3 U.S. English w/ deadkeys
4 Albanian
5 Arabic
6 Armenian
7 Azerbaidjani
8 Belarusian
9 Belgian
10 Bengali
11 Brazilian
12 Bulgarian
13 Burmese
14 Canadian
15 Croatian
16 Czech
17 Czech (qwerty)
18 Danish
Enter a number to choose the country.
Press enter for the next page
1
Please enter a variant name for 'us' layout. Or just press enter
for default variant
us
Please answer the following question with either 'y' or 'n'.
Do you want to select additional XKB options (group switcher,
group indicator, etc.)? n</screen>
<para>Next, we proceed to the configuration for the monitor. Do not
exceed the ratings of your monitor. Damage could occur. If you
have any doubts, do the configuration after you have the
information.</para>
<screen>Now we want to set the specifications of the monitor. The two critical
parameters are the vertical refresh rate, which is the rate at which the
whole screen is refreshed, and most importantly the horizontal sync rate,
which is the rate at which scanlines are displayed.
The valid range for horizontal sync and vertical sync should be documented
in the manual of your monitor. If in doubt, check the monitor database
/usr/X11R6/lib/X11/doc/Monitors to see if your monitor is there.
Press enter to continue, or ctrl-c to abort.
You must indicate the horizontal sync range of your monitor. You can either
select one of the predefined ranges below that correspond to industry-
standard monitor types, or give a specific range.
It is VERY IMPORTANT that you do not specify a monitor type with a horizontal
sync range that is beyond the capabilities of your monitor. If in doubt,
choose a conservative setting.
hsync in kHz; monitor type with characteristic modes
1 31.5; Standard VGA, 640x480 @ 60 Hz
2 31.5 - 35.1; Super VGA, 800x600 @ 56 Hz
3 31.5, 35.5; 8514 Compatible, 1024x768 @ 87 Hz interlaced (no 800x600)
4 31.5, 35.15, 35.5; Super VGA, 1024x768 @ 87 Hz interlaced, 800x600 @ 56 Hz
5 31.5 - 37.9; Extended Super VGA, 800x600 @ 60 Hz, 640x480 @ 72 Hz
6 31.5 - 48.5; Non-Interlaced SVGA, 1024x768 @ 60 Hz, 800x600 @ 72 Hz
7 31.5 - 57.0; High Frequency SVGA, 1024x768 @ 70 Hz
8 31.5 - 64.3; Monitor that can do 1280x1024 @ 60 Hz
9 31.5 - 79.0; Monitor that can do 1280x1024 @ 74 Hz
10 31.5 - 82.0; Monitor that can do 1280x1024 @ 76 Hz
11 Enter your own horizontal sync range
Enter your choice (1-11): 6
You must indicate the vertical sync range of your monitor. You can either
select one of the predefined ranges below that correspond to industry-
standard monitor types, or give a specific range. For interlaced modes,
the number that counts is the high one (e.g. 87 Hz rather than 43 Hz).
1 50-70
2 50-90
3 50-100
4 40-150
5 Enter your own vertical sync range
Enter your choice: 2
You must now enter a few identification/description strings, namely an
identifier, a vendor name, and a model name. Just pressing enter will fill
in default names.
The strings are free-form, spaces are allowed.
Enter an identifier for your monitor definition: Hitachi</screen>
<para>The selection of a video card driver from a list is
next. If you pass your card on the list, continue to press
<keycap>Enter</keycap> and the list will repeat. Only an
excerpt from the list is shown:</para>
<screen>Now we must configure video card specific settings. At this point you can
choose to make a selection out of a database of video card definitions.
Because there can be variation in Ramdacs and clock generators even
between cards of the same model, it is not sensible to blindly copy
the settings (e.g. a Device section). For this reason, after you make a
selection, you will still be asked about the components of the card, with
the settings from the chosen database entry presented as a strong hint.
The database entries include information about the chipset, what driver to
run, the Ramdac and ClockChip, and comments that will be included in the
Device section. However, a lot of definitions only hint about what driver
to run (based on the chipset the card uses) and are untested.
If you can't find your card in the database, there's nothing to worry about.
You should only choose a database entry that is exactly the same model as
your card; choosing one that looks similar is just a bad idea (e.g. a
GemStone Snail 64 may be as different from a GemStone Snail 64+ in terms of
hardware as can be).
Do you want to look at the card database? y
288 Matrox Millennium G200 8MB mgag200
289 Matrox Millennium G200 SD 16MB mgag200
290 Matrox Millennium G200 SD 4MB mgag200
291 Matrox Millennium G200 SD 8MB mgag200
292 Matrox Millennium G400 mgag400
293 Matrox Millennium II 16MB mga2164w
294 Matrox Millennium II 4MB mga2164w
295 Matrox Millennium II 8MB mga2164w
296 Matrox Mystique mga1064sg
297 Matrox Mystique G200 16MB mgag200
298 Matrox Mystique G200 4MB mgag200
299 Matrox Mystique G200 8MB mgag200
300 Matrox Productiva G100 4MB mgag100
301 Matrox Productiva G100 8MB mgag100
302 MediaGX mediagx
303 MediaVision Proaxcel 128 ET6000
304 Mirage Z-128 ET6000
305 Miro CRYSTAL VRX Verite 1000
Enter a number to choose the corresponding card definition.
Press enter for the next page, q to continue configuration.
288
Your selected card definition:
Identifier: Matrox Millennium G200 8MB
Chipset: mgag200
Driver: mga
Do NOT probe clocks or use any Clocks line.
Press enter to continue, or ctrl-c to abort.
Now you must give information about your video card. This will be used for
the "Device" section of your video card in XF86Config.
You must indicate how much video memory you have. It is probably a good
idea to use the same approximate amount as that detected by the server you
intend to use. If you encounter problems that are due to the used server
not supporting the amount memory you have (e.g. ATI Mach64 is limited to
1024K with the SVGA server), specify the maximum amount supported by the
server.
How much video memory do you have on your video card:
1 256K
2 512K
3 1024K
4 2048K
5 4096K
6 Other
Enter your choice: 6
Amount of video memory in Kbytes: 8192
You must now enter a few identification/description strings, namely an
identifier, a vendor name, and a model name. Just pressing enter will fill
in default names (possibly from a card definition).
Your card definition is Matrox Millennium G200 8MB.
The strings are free-form, spaces are allowed.
Enter an identifier for your video card definition:</screen>
<para>Next, the video modes are set for the resolutions
desired. Typically, useful ranges are 640x480, 800x600, and 1024x768
but those are a function of video card capability, monitor size,
and eye comfort. When selecting a color depth, select the highest
mode that your card will support.</para>
<screen>For each depth, a list of modes (resolutions) is defined. The default
resolution that the server will start-up with will be the first listed
mode that can be supported by the monitor and card.
Currently it is set to:
"640x480" "800x600" "1024x768" "1280x1024" for 8-bit
"640x480" "800x600" "1024x768" "1280x1024" for 16-bit
"640x480" "800x600" "1024x768" "1280x1024" for 24-bit
Modes that cannot be supported due to monitor or clock constraints will
be automatically skipped by the server.
1 Change the modes for 8-bit (256 colors)
2 Change the modes for 16-bit (32K/64K colors)
3 Change the modes for 24-bit (24-bit color)
4 The modes are OK, continue.
Enter your choice: 2
Select modes from the following list:
1 "640x400"
2 "640x480"
3 "800x600"
4 "1024x768"
5 "1280x1024"
6 "320x200"
7 "320x240"
8 "400x300"
9 "1152x864"
a "1600x1200"
b "1800x1400"
c "512x384"
Please type the digits corresponding to the modes that you want to select.
For example, 432 selects "1024x768" "800x600" "640x480", with a
default mode of 1024x768.
Which modes? 432
You can have a virtual screen (desktop), which is screen area that is larger
than the physical screen and which is panned by moving the mouse to the edge
of the screen. If you don't want virtual desktop at a certain resolution,
you cannot have modes listed that are larger. Each color depth can have a
differently-sized virtual screen
Please answer the following question with either 'y' or 'n'.
Do you want a virtual screen that is larger than the physical screen? n
For each depth, a list of modes (resolutions) is defined. The default
resolution that the server will start-up with will be the first listed
mode that can be supported by the monitor and card.
Currently it is set to:
"640x480" "800x600" "1024x768" "1280x1024" for 8-bit
"1024x768" "800x600" "640x480" for 16-bit
"640x480" "800x600" "1024x768" "1280x1024" for 24-bit
Modes that cannot be supported due to monitor or clock constraints will
be automatically skipped by the server.
1 Change the modes for 8-bit (256 colors)
2 Change the modes for 16-bit (32K/64K colors)
3 Change the modes for 24-bit (24-bit color)
4 The modes are OK, continue.
Enter your choice: 4
Please specify which color depth you want to use by default:
1 1 bit (monochrome)
2 4 bits (16 colors)
3 8 bits (256 colors)
4 16 bits (65536 colors)
5 24 bits (16 million colors)
Enter a number to choose the default depth.
4</screen>
<para>Finally, the configuration needs to be saved. Be sure
to enter <filename>/etc/XF86Config</filename> as the location
for saving the configuration.</para>
<screen>I am going to write the XF86Config file now. Make sure you don't accidently
overwrite a previously configured one.
Shall I write it to /etc/X11/XF86Config? y</screen>
<para>If the configuration fails, you can try the configuration again
by selecting &gui.yes; when the following
message appears:</para>
<screen> User Confirmation Requested
The XFree86 configuration process seems to have
failed. Would you like to try again?
[ Yes ] No</screen>
<para>If you have trouble configuring <application>&xfree86;</application>, select
&gui.no; and press <keycap>Enter</keycap>
and continue with the installation process. After installation
you can use <command>xf86cfg -textmode</command> or
<command>xf86config</command> to access the command line
configuration utilities as <username>root</username>. There is
an additional method for configuring <application>&xfree86;</application> described in
<xref linkend="x11">. If you choose not to configure
<application>&xfree86;</application> at this time the next menu will be for package
selection.</para>
<para>The default setting which allows the server to be killed
is the hotkey sequence <keycombo action='simul'>
<keycap>Ctrl</keycap><keycap>Alt</keycap>
<keycap>Backspace</keycap></keycombo>. This
can be executed if something is wrong with the server settings and
prevent hardware damage.</para>
<para>The default setting that allows video mode switching will
permit changing of the mode while running X with the hotkey
sequence
<keycombo action='simul'>
<keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>+</keycap>
</keycombo> or
<keycombo action='simul'>
<keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>-</keycap>
</keycombo>.
</para>
<para>After you have <application>&xfree86;</application>
running, the display can be adjusted for height, width,
or centering by using <application>xvidtune</application>.</para>
<para>There are warnings that improper settings can
damage your equipment. Heed them. If in doubt, do not do
it. Instead, use the monitor controls to adjust the display for
X Window. There may be some display differences when switching
back to text mode, but it is better than damaging equipment.</para>
<para>Read the &man.xvidtune.1; manual page before making
any adjustments.</para>
<para>Following a successful <application>&xfree86;</application> configuration, it will proceed
to the selection of a default desktop.</para>
</sect2>
<sect2 id="default-desktop">
<title>Select Default X Desktop</title>
<note>
<para>As of &os;&nbsp;5.3-RELEASE, the X desktop selection
facility has been removed from
<application>sysinstall</application>, you have to configure
the X desktop after the installation of &os;. More
information regarding the installation and the configuration
of a X desktop can be found in <xref linkend="x11">. You
can skip this section if you are not installing a &os;
version prior to 5.3-RELEASE.</para>
</note>
<para>There are a variety of window managers available. They range
from very basic environments to full desktop environments with a
large suite of software. Some require only minimal disk space and
low memory while others with more features require much more. The
best way to determine which is most suitable for you is to try a few
different ones. Those are available from the ports collection or as
packages and can be added after installation.</para>
<para>You can select one of the popular desktops to be installed
and configured as the default desktop. This will allow you
to start it right after installation.</para>
<figure id="x-desktop">
<title>Select Default Desktop</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/desktop" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Use the arrow keys to select a desktop and press
<keycap>Enter</keycap>. Installation of the selected desktop will
proceed.</para>
</sect2>
<sect2 id="packages">
<title>Install Packages</title>
<para>Packages are pre-compiled binaries and are a convenient
way to install software.</para>
<para>Installation of one package is shown for purposes of
illustration. Additional packages can also be added at this
time if desired. After installation
<command>/stand/sysinstall</command> can be used to add additional
packages.</para>
<screen> User Confirmation Requested
The FreeBSD package collection is a collection of hundreds of
ready-to-run applications, from text editors to games to WEB servers
and more. Would you like to browse the collection now?
[ Yes ] No</screen>
<para>Selecting &gui.yes; and pressing
<keycap>Enter</keycap> will be
followed by the Package Selection screens:</para>
<figure id="package-category">
<title>Select Package Category</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/pkg-cat" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Only packages on the current installation media are
available for installation at any given time.</para>
<para>All packages available will be displayed if
<guimenuitem>All</guimenuitem> is selected or you can select a
particular category. Highlight your selection with the arrow
keys and press <keycap>Enter</keycap>.</para>
<para>A menu will display showing all the packages available for
the selection made:</para>
<figure id="package-select">
<title>Select Packages</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/pkg-sel" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>The <application>bash</application> shell is shown selected.
Select as many as desired by highlighting the package and pressing the
<keycap>Space</keycap> key. A short description of each package will
appear in the lower left corner of the screen.</para>
<para>Pressing the <keycap>Tab</keycap> key will toggle between the last
selected package, &gui.ok;, and &gui.cancel;.</para>
<para>When you have finished marking the packages for installation,
press <keycap>Tab</keycap> once to toggle to the &gui.ok; and press
<keycap>Enter</keycap> to return to the Package Selection menu.</para>
<para>The left and right arrow keys will also toggle between &gui.ok;
and &gui.cancel;. This method can also be used to select &gui.ok; and
press <keycap>Enter</keycap> to return to the Package Selection
menu.</para>
<figure id="package-install">
<title>Install Packages</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/pkg-install" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Use the <keycap>Tab</keycap> and arrow keys to select <guibutton>[&nbsp;Install&nbsp;]</guibutton>
and press <keycap>Enter</keycap>. You will then need to confirm
that you want to install the packages:</para>
<figure id="package-install-confirm">
<title>Confirm Package Installation</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/pkg-confirm" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Selecting &gui.ok; and pressing <keycap>Enter</keycap> will start
the package installation. Installing messages will appear until
completed. Make note if there are any error messages.</para>
<para>The final configuration continues after packages are
installed. If you end up not selecting any packages, and wish
to return to the final configuration, select
<guibutton>Install</guibutton> anyways.</para>
</sect2>
<sect2 id="addusers">
<title>Add Users/Groups</title>
<para>You should add at least one user during the installation so
that you can use the system without being logged in as
<username>root</username>. The root partition is generally small
and running applications as <username>root</username> can quickly
fill it. A bigger danger is noted below:</para>
<screen> User Confirmation Requested
Would you like to add any initial user accounts to the system? Adding
at least one account for yourself at this stage is suggested since
working as the "root" user is dangerous (it is easy to do things which
adversely affect the entire system).
[ Yes ] No</screen>
<para>Select &gui.yes; and press
<keycap>Enter</keycap> to continue with adding a user.</para>
<figure id="add-user2">
<title>Select User</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/adduser1" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Select <guimenuitem>User</guimenuitem> with the arrow keys
and press <keycap>Enter</keycap>.</para>
<figure id="add-user3">
<title>Add User Information</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/adduser2" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>The following descriptions will appear in the lower part of
the screen as the items are selected with <keycap>Tab</keycap>
to assist with entering the required information:</para>
<variablelist>
<varlistentry>
<term>Login ID</term>
<listitem>
<para>The login name of the new user (mandatory).</para>
</listitem>
</varlistentry>
<varlistentry>
<term>UID</term>
<listitem>
<para>The numerical ID for this user (leave blank for
automatic choice).</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Group</term>
<listitem>
<para>The login group name for this user (leave blank for
automatic choice).</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Password</term>
<listitem>
<para>The password for this user (enter this field with
care!).</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Full name</term>
<listitem>
<para>The user's full name (comment).</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Member groups</term>
<listitem>
<para>The groups this user belongs to (i.e. gets access
rights for).</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Home directory</term>
<listitem>
<para>The user's home directory (leave blank for
default).</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Login shell</term>
<listitem>
<para>The user's login shell (leave blank for
default, e.g. <filename>/bin/sh</filename>).</para>
</listitem>
</varlistentry>
</variablelist>
<para>The login shell was changed from <filename>/bin/sh</filename> to
<filename>/usr/local/bin/bash</filename> to use the
<application>bash</application> shell that was previously installed as
a package. Do not try to use a shell that does not exist or you will
not be able to login. The most common shell used in the
BSD-world is the C shell, which can be indicated as
<filename>/bin/tcsh</filename>.</para>
<para>The user was also added to the <groupname>wheel</groupname> group
to be able to become a superuser with <username>root</username>
privileges.</para>
<para>When you are satisfied, press &gui.ok; and
the User and Group Management menu will redisplay:</para>
<figure id="add-user4">
<title>Exit User and Group Management</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/adduser3" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Groups can also be added at this time if specific needs
are known. Otherwise, this may be accessed through using
<filename>/stand/sysinstall</filename> after installation is
completed.</para>
<para>When you are finished adding users, select
<guimenuitem>Exit</guimenuitem> with the arrow keys and press
<keycap>Enter</keycap> to continue the installation.</para>
</sect2>
<sect2 id="rootpass">
<title>Set the <username>root</username> Password</title>
<screen> Message
Now you must set the system manager's password.
This is the password you'll use to log in as "root".
[ OK ]
[ Press enter to continue ]</screen>
<para>Press <keycap>Enter</keycap> to set the <username>root</username>
password.</para>
<para>The password will need to be typed in twice correctly. Needless to
say, make sure you have a way of finding the password if you
forget.</para>
<screen>Changing local password for root.
New password :
Retype new password :</screen>
<para>The installation will continue after the password is
successfully entered.</para>
</sect2>
<sect2 id="exit-inst">
<title>Exiting Install</title>
<para>If you need to configure additional network devices or
any other configuration, you can do it at this point or
after installation with <filename>/stand/sysinstall</filename>.</para>
<screen> User Confirmation Requested
Visit the general configuration menu for a chance to set any last
options?
Yes [ No ]</screen>
<para>Select &gui.no; with the arrow keys
and press <keycap>Enter</keycap> to return to the Main
Installation Menu.</para>
<figure id="final-main">
<title>Exit Install</title>
<mediaobject>
<imageobject>
<imagedata fileref="install/mainexit" format="PNG">
</imageobject>
</mediaobject>
</figure>
<para>Select <guibutton>[X Exit Install]</guibutton> with the arrow
keys and press <keycap>Enter</keycap>. You will be asked to
confirm exiting the installation:</para>
<screen> User Confirmation Requested
Are you sure you wish to exit? The system will reboot (be sure to
remove any floppies from the drives).
[ Yes ] No</screen>
<para>Select &gui.yes; and remove the floppy if
booting from the floppy. The CDROM drive is locked until the machine
starts to reboot. The CDROM drive is then unlocked and the disk can
be removed from drive (quickly).</para>
<para>The system will reboot so watch for any error messages that
may appear.</para>
</sect2>
<sect2 id="freebsdboot">
<title>FreeBSD Bootup</title>
<sect3 id="freebsdboot-i386">
<title>FreeBSD Bootup on the &i386;</title>
<para>If everything went well, you will see messages scroll
off the screen and you will arrive at a login prompt. You can view
the content of the messages by pressing <keycap>Scroll-Lock</keycap>
and using <keycap>PgUp</keycap> and <keycap>PgDn</keycap>.
Pressing <keycap>Scroll-Lock</keycap> again will return
to the prompt.</para>
<para>The entire message may not display (buffer limitation) but
it can be viewed from the command line after logging in by typing
<command>dmesg</command> at the prompt.</para>
<para>Login using the username/password you set during installation
(<username>rpratt</username>, in this example). Avoid logging in as
<username>root</username> except when necessary.</para>
<para>Typical boot messages (version information omitted):</para>
<screen>Copyright (c) 1992-2002 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
Timecounter "i8254" frequency 1193182 Hz
CPU: AMD-K6(tm) 3D processor (300.68-MHz 586-class CPU)
Origin = "AuthenticAMD" Id = 0x580 Stepping = 0
Features=0x8001bf&lt;FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX&gt;
AMD Features=0x80000800&lt;SYSCALL,3DNow!&gt;
real memory = 268435456 (262144K bytes)
config&gt; di sn0
config&gt; di lnc0
config&gt; di le0
config&gt; di ie0
config&gt; di fe0
config&gt; di cs0
config&gt; di bt0
config&gt; di aic0
config&gt; di aha0
config&gt; di adv0
config&gt; q
avail memory = 256311296 (250304K bytes)
Preloaded elf kernel "kernel" at 0xc0491000.
Preloaded userconfig_script "/boot/kernel.conf" at 0xc049109c.
md0: Malloc disk
Using $PIR table, 4 entries at 0xc00fde60
npx0: &lt;math processor&gt; on motherboard
npx0: INT 16 interface
pcib0: &lt;Host to PCI bridge&gt; on motherboard
pci0: &lt;PCI bus&gt; on pcib0
pcib1: &lt;VIA 82C598MVP (Apollo MVP3) PCI-PCI (AGP) bridge&gt; at device 1.0 on pci0
pci1: &lt;PCI bus&gt; on pcib1
pci1: &lt;Matrox MGA G200 AGP graphics accelerator&gt; at 0.0 irq 11
isab0: &lt;VIA 82C586 PCI-ISA bridge&gt; at device 7.0 on pci0
isa0: &lt;ISA bus&gt; on isab0
atapci0: &lt;VIA 82C586 ATA33 controller&gt; port 0xe000-0xe00f at device 7.1 on pci0
ata0: at 0x1f0 irq 14 on atapci0
ata1: at 0x170 irq 15 on atapci0
uhci0: &lt;VIA 83C572 USB controller&gt; port 0xe400-0xe41f irq 10 at device 7.2 on pci0
usb0: &lt;VIA 83C572 USB controller&gt; on uhci0
usb0: USB revision 1.0
uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
chip1: &lt;VIA 82C586B ACPI interface&gt; at device 7.3 on pci0
ed0: &lt;NE2000 PCI Ethernet (RealTek 8029)&gt; port 0xe800-0xe81f irq 9 at
device 10.0 on pci0
ed0: address 52:54:05:de:73:1b, type NE2000 (16 bit)
isa0: too many dependant configs (8)
isa0: unexpected small tag 14
fdc0: &lt;NEC 72065B or clone&gt; at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0
fdc0: FIFO enabled, 8 bytes threshold
fd0: &lt;1440-KB 3.5" drive&gt; on fdc0 drive 0
atkbdc0: &lt;keyboard controller (i8042)&gt; at port 0x60-0x64 on isa0
atkbd0: &lt;AT Keyboard&gt; flags 0x1 irq 1 on atkbdc0
kbd0 at atkbd0
psm0: &lt;PS/2 Mouse&gt; irq 12 on atkbdc0
psm0: model Generic PS/2 mouse, device ID 0
vga0: &lt;Generic ISA VGA&gt; at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
sc0: &lt;System console&gt; at flags 0x1 on isa0
sc0: VGA &lt;16 virtual consoles, flags=0x300&gt;
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
ppc0: &lt;Parallel port&gt; at port 0x378-0x37f irq 7 on isa0
ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
ppc0: FIFO with 16/16/15 bytes threshold
ppbus0: IEEE1284 device found /NIBBLE
Probing for PnP devices on ppbus0:
plip0: &lt;PLIP network interface&gt; on ppbus0
lpt0: &lt;Printer&gt; on ppbus0
lpt0: Interrupt-driven port
ppi0: &lt;Parallel I/O&gt; on ppbus0
ad0: 8063MB &lt;IBM-DHEA-38451&gt; [16383/16/63] at ata0-master using UDMA33
ad2: 8063MB &lt;IBM-DHEA-38451&gt; [16383/16/63] at ata1-master using UDMA33
acd0: CDROM &lt;DELTA OTC-H101/ST3 F/W by OIPD&gt; at ata0-slave using PIO4
Mounting root from ufs:/dev/ad0s1a
swapon: adding /dev/ad0s1b as swap device
Automatic boot in progress...
/dev/ad0s1a: FILESYSTEM CLEAN; SKIPPING CHECKS
/dev/ad0s1a: clean, 48752 free (552 frags, 6025 blocks, 0.9% fragmentation)
/dev/ad0s1f: FILESYSTEM CLEAN; SKIPPING CHECKS
/dev/ad0s1f: clean, 128997 free (21 frags, 16122 blocks, 0.0% fragmentation)
/dev/ad0s1g: FILESYSTEM CLEAN; SKIPPING CHECKS
/dev/ad0s1g: clean, 3036299 free (43175 frags, 374073 blocks, 1.3% fragmentation)
/dev/ad0s1e: filesystem CLEAN; SKIPPING CHECKS
/dev/ad0s1e: clean, 128193 free (17 frags, 16022 blocks, 0.0% fragmentation)
Doing initial network setup: hostname.
ed0: flags=8843&lt;UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255
inet6 fe80::5054::5ff::fede:731b%ed0 prefixlen 64 tentative scopeid 0x1
ether 52:54:05:de:73:1b
lo0: flags=8049&lt;UP,LOOPBACK,RUNNING,MULTICAST&gt; mtu 16384
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x8
inet6 ::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000
Additional routing options: IP gateway=YES TCP keepalive=YES
routing daemons:.
additional daemons: syslogd.
Doing additional network setup:.
Starting final network daemons: creating ssh RSA host key
Generating public/private rsa1 key pair.
Your identification has been saved in /etc/ssh/ssh_host_key.
Your public key has been saved in /etc/ssh/ssh_host_key.pub.
The key fingerprint is:
cd:76:89:16:69:0e:d0:6e:f8:66:d0:07:26:3c:7e:2d root@k6-2.example.com
creating ssh DSA host key
Generating public/private dsa key pair.
Your identification has been saved in /etc/ssh/ssh_host_dsa_key.
Your public key has been saved in /etc/ssh/ssh_host_dsa_key.pub.
The key fingerprint is:
f9:a1:a9:47:c4:ad:f9:8d:52:b8:b8:ff:8c:ad:2d:e6 root@k6-2.example.com.
setting ELF ldconfig path: /usr/lib /usr/lib/compat /usr/X11R6/lib
/usr/local/lib
a.out ldconfig path: /usr/lib/aout /usr/lib/compat/aout /usr/X11R6/lib/aout
starting standard daemons: inetd cron sshd usbd sendmail.
Initial rc.i386 initialization:.
rc.i386 configuring syscons: blank_time screensaver moused.
Additional ABI support: linux.
Local package initialization:.
Additional TCP options:.
FreeBSD/i386 (k6-2.example.com) (ttyv0)
login: rpratt
Password:</screen>
<para>Generating the RSA and DSA keys may take some time on slower
machines. This happens only on the initial boot-up of a new
installation. Subsequent boots will be faster.</para>
<para>If the X server has been configured and a Default Desktop
chosen, it can be started by typing <command>startx</command> at
the command line.</para>
</sect3>
<sect3>
<title>Bootup of FreeBSD on the Alpha</title>
<indexterm><primary>Alpha</primary></indexterm>
<para>Once the install procedure has finished, you will be
able to start FreeBSD by typing something like this to the
SRM prompt:</para>
<screen>&gt;&gt;&gt;<userinput>BOOT DKC0</userinput></screen>
<para>This instructs the firmware to boot the specified
disk. To make FreeBSD boot automatically in the future, use
these commands:</para>
<screen><prompt>&gt;&gt;&gt;</prompt> <userinput>SET BOOT_OSFLAGS A</userinput>
<prompt>&gt;&gt;&gt;</prompt> <userinput>SET BOOT_FILE ''</userinput>
<prompt>&gt;&gt;&gt;</prompt> <userinput>SET BOOTDEF_DEV DKC0</userinput>
<prompt>&gt;&gt;&gt;</prompt> <userinput>SET AUTO_ACTION BOOT</userinput></screen>
<para>The boot messages will be similar (but not identical) to
those produced by FreeBSD booting on the &i386;.</para>
</sect3>
</sect2>
<sect2 id="shutdown">
<title>FreeBSD Shutdown</title>
<para>It is important to properly shutdown the operating
system. Do not just turn off power. First, become a superuser by
typing <command>su</command> at the command line and entering the
<username>root</username> password. This will work only if the user
is a member of the <groupname>wheel</groupname> group.
Otherwise, login as <username>root</username> and use
<command>shutdown -h now</command>.</para>
<screen>The operating system has halted.
Please press any key to reboot.</screen>
<para>It is safe to turn off the power after the shutdown command
has been issued and the message <quote>Please press any key to reboot</quote>
appears. If any key is pressed instead of turning off the power
switch, the system will reboot.</para>
<para>You could also use the
<keycombo action="simul">
<keycap>Ctrl</keycap>
<keycap>Alt</keycap>
<keycap>Del</keycap>
</keycombo>
key combination to reboot the system, however this is not recommended
during normal operation.</para>
</sect2>
</sect1>
<sect1 id="install-supported-hardware">
<title>Supported Hardware</title>
<indexterm><primary>hardware</primary></indexterm>
<para>FreeBSD currently runs on a wide variety of ISA, VLB, EISA, and PCI
bus-based PCs with Intel, AMD, Cyrix, or NexGen <quote>x86</quote>
processors, as well as a number of machines based on the Compaq Alpha
processor. Support for generic IDE or ESDI drive configurations,
various SCSI controllers, PCMCIA cards, USB devices, and network and
serial cards is also provided. FreeBSD also supports IBM's microchannel
(MCA) bus.</para>
<para>A list of supported hardware is provided with each FreeBSD release
in the FreeBSD Hardware Notes. This document can usually be found in a
file named <filename>HARDWARE.TXT</filename>, in the top-level directory
of a CDROM or FTP distribution or in
<application>sysinstall</application>'s documentation menu. It lists,
for a given architecture, what hardware devices are known to be
supported by each release of FreeBSD. Copies of the supported
hardware list for various releases and architectures can also be
found on the <ulink
url="http://www.FreeBSD.org/releases/index.html">Release
Information</ulink> page of the FreeBSD Web site.</para>
</sect1>
<sect1 id="install-trouble">
<title>Troubleshooting</title>
<indexterm>
<primary>installation</primary>
<secondary>troubleshooting</secondary>
</indexterm>
<para>The following section covers basic installation troubleshooting,
such as common problems people have reported. There are also a few
questions and answers for people wishing to dual-boot FreeBSD with
&ms-dos;.</para>
<sect2>
<title>What to Do If Something Goes Wrong</title>
<para>Due to various limitations of the PC architecture, it is
impossible for probing to be 100% reliable, however, there are a
few things you can do if it fails.</para>
<para>Check the Hardware Notes document for your version of
FreeBSD to make sure your hardware is
supported.</para>
<para>If your hardware is supported and you still experience
lock-ups or other problems, reset your computer, and when the
visual kernel configuration option is given, choose it. This will
allow you to go through your hardware and supply information to the
system about it. The kernel on the boot disks is configured
assuming that most hardware devices are in their factory default
configuration in terms of IRQs, IO addresses, and DMA channels. If
your hardware has been reconfigured, you will most likely need to
use the configuration editor to tell FreeBSD where to find
things.</para>
<para>It is also possible that a probe for a device not present will
cause a later probe for another device that is present to fail. In
that case, the probes for the conflicting driver(s) should be
disabled.</para>
<note>
<para>Some installation problems can be avoided or alleviated
by updating the firmware on various hardware components, most notably
the motherboard. The motherboard firmware may also be referred to
as <acronym>BIOS</acronym> and most of the motherboard or computer
manufactures have a website where the upgrades and upgrade information
may be located.</para>
<para>Most manufacturers strongly advise against upgrading the motherboard
<acronym>BIOS</acronym> unless there is a good reason for doing so, which
could possibly be a critical update of sorts. The upgrade process
<emphasis>can</emphasis> go wrong, causing permanent damage to the
<acronym>BIOS</acronym> chip.</para>
</note>
<warning>
<para>Do not disable any drivers you will need during the
installation, such as your screen (<devicename>sc0</devicename>).
If the installation wedges or fails mysteriously after leaving
the configuration editor, you have probably removed or changed
something you should not have. Reboot and try again.</para>
</warning>
<para>In configuration mode, you can:</para>
<itemizedlist>
<listitem>
<para>List the device drivers installed in the kernel.</para>
</listitem>
<listitem>
<para>Disable device drivers for hardware that is not present in
your system.</para>
</listitem>
<listitem>
<para>Change IRQs, DRQs, and IO port addresses used by a device
driver.</para>
</listitem>
</itemizedlist>
<para>After adjusting the kernel to match your hardware
configuration, type <command>Q</command> to boot with the new
settings. Once the installation has completed, any changes you
made in the configuration mode will be permanent so you do not have
to reconfigure every time you boot. It is still highly likely that
you will eventually want to build a <link
linkend="kernelconfig">custom kernel</link>.</para>
</sect2>
<sect2>
<title>Dealing with Existing &ms-dos; Partitions</title>
<indexterm><primary>DOS</primary></indexterm>
<para>Many users wish to install &os; on <acronym>PC</acronym>s inhabited by
&microsoft; based operating systems. For those instances, &os; has a
utility known as <application>FIPS</application>. This utility can be found
in the <filename>tools</filename> directory on the install CD-ROM, or downloaded
from one of various <link linkend="mirrors">&os; mirrors</link>.</para>
<para>The <application>FIPS</application> utility allows you to split an
existing &ms-dos; partition into two pieces, preserving the original
partition and allowing you to install onto the second free piece.
You first need to defragment your &ms-dos; partition using the &windows;;
<application>Disk Defragmenter</application> utility (go into Explorer, right-click on
the hard drive, and choose to defrag your hard drive), or use
<application>Norton Disk Tools</application>. Now you can run the
<application>FIPS</application> utility. It will prompt you for the rest of
the information, just follow the on screen instructions. Afterwards, you can
reboot and install &os; on the new free slice. See the <guimenuitem>Distributions</guimenuitem> menu
for an estimate of how much free space you will need for the kind of
installation you want.</para>
<para>There is also a very useful product from PowerQuest
(<ulink url="http://www.powerquest.com/">http://www.powerquest.com</ulink>) called
<application>&partitionmagic;</application>. This application has far more
functionality than <application>FIPS</application>, and is highly recommended
if you plan to add/remove operating systems often. It does cost money, so if you
plan to install &os; and keep it installed, <application>FIPS</application>
will probably be fine for you.</para>
</sect2>
<sect2>
<title>Using &ms-dos; and &windows; File Systems</title>
<para>At this time, &os; does not support file systems compressed with the
<application>Double Space&trade;</application> application. Therefore the file
system will need to be uncompressed before &os; can access the data. This
can be done by running the <application>Compression Agent</application>
located in the <guimenuitem>Start</guimenuitem>&gt; <guimenuitem>Programs</guimenuitem> &gt;
<guimenuitem>System Tools</guimenuitem> menu.</para>
<para>&os; can support &ms-dos; based file systems. This requires you use
the &man.mount.msdos.8; command (in &os; 5.X, the command is &man.mount.msdosfs.8;)
with the required parameters. The utilities most common usage is:</para>
<screen>&prompt.root; <userinput>mount_msdos /dev/ad0s1 /mnt</userinput></screen>
<para>In this example, the &ms-dos; file system is located on the first partition of
the primary hard disk. Your situation may be different, check the output from
the <command>dmesg</command>, and <command>mount</command> commands. They should
produce enough information to give an idea of the partition layout.</para>
<note><para>Extended &ms-dos; file systems are usually mapped after the &os;
partitions. In other words, the slice number may be higher than the ones
&os; is using. For instance, the first &ms-dos; partition may be
<filename>/dev/ad0s1</filename>, the &os; partition may be
<filename>/dev/ad0s2</filename>, with the extended &ms-dos; partition being
located on <filename>/dev/ad0s3</filename>. To some, this can be confusing
at first.</para></note>
<para>NTFS partitions can also be mounted in a similar manner
using the &man.mount.ntfs.8; command.</para>
</sect2>
<sect2>
<title>Alpha User's Questions and Answers</title>
<indexterm><primary>Alpha</primary></indexterm>
<para>This section answers some commonly asked questions about
installing FreeBSD on Alpha systems.</para>
<qandaset>
<qandaentry>
<question>
<para>Can I boot from the ARC or Alpha BIOS Console?</para>
</question>
<indexterm><primary>ARC</primary></indexterm>
<indexterm><primary>Alpha BIOS</primary></indexterm>
<indexterm><primary>SRM</primary></indexterm>
<answer>
<para>No. &os;, like Compaq Tru64 and VMS, will only boot
from the SRM console.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>Help, I have no space! Do I need to delete
everything first?</para>
</question>
<answer>
<para>Unfortunately, yes.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>Can I mount my Compaq Tru64 or VMS filesystems?</para>
</question>
<answer>
<para>No, not at this time.</para>
</answer>
</qandaentry>
</qandaset>
</sect2>
</sect1>
<sect1 id="install-advanced">
<sect1info>
<authorgroup>
<author>
<firstname>Valentino</firstname>
<surname>Vaschetto</surname>
<contrib>Contributed by </contrib>
</author>
<!-- May 2001 -->
</authorgroup>
</sect1info>
<title>Advanced Installation Guide</title>
<para>This section describes how to install FreeBSD in exceptional
cases.</para>
<sect2 id="headless-install">
<title>Installing FreeBSD on a System without a Monitor or
Keyboard</title>
<indexterm>
<primary>installation</primary>
<secondary>headless (serial console)</secondary>
</indexterm>
<indexterm><primary>serial console</primary></indexterm>
<para>This type of installation is called a <quote>headless
install</quote>, because the machine that you are trying to install
FreeBSD on either does not have a monitor attached to it, or does not
even have a VGA output. How is this possible you ask? Using a
serial console. A serial console is basically using another
machine to act as the main display and keyboard for a
system. To do this, just follow the steps to create
installation floppies, explained in <xref
linkend="install-floppies">.</para>
<para>To modify these floppies to boot into a serial console, follow
these steps:</para>
<procedure>
<step>
<title>Enabling the Boot Floppies to Boot into a Serial Console</title>
<indexterm>
<primary><command>mount</command></primary>
</indexterm>
<para>If you were to boot into the floppies that you just
made, FreeBSD would boot into its normal install mode. We
want FreeBSD to boot into a serial console for our
install. To do this, you have to mount the
<filename>kern.flp</filename> floppy onto your FreeBSD
system using the &man.mount.8; command.</para>
<screen>&prompt.root; <userinput>mount /dev/fd0 /mnt</userinput></screen>
<para>Now that you have the floppy mounted, you must
change into the <filename class="directory">/mnt</filename> directory:</para>
<screen>&prompt.root; <userinput>cd /mnt</userinput></screen>
<para>Here is where you must set the floppy to boot into a
serial console. You have to make a file called
<filename>boot.config</filename> containing
<literal>/boot/loader -h</literal>. All this does is pass a flag to the bootloader to
boot into a serial console.</para>
<screen>&prompt.root; <userinput>echo "/boot/loader -h" > boot.config</userinput></screen>
<para>Now that you have your floppy configured correctly,
you must unmount the floppy using the &man.umount.8;
command:</para>
<screen>&prompt.root; <userinput>cd /</userinput>
&prompt.root; <userinput>umount /mnt</userinput></screen>
<para>Now you can remove the floppy from the floppy
drive.</para>
</step>
<step>
<title>Connecting Your Null Modem Cable</title>
<indexterm><primary>null modem cable</primary></indexterm>
<para>You now need to connect a
<link linkend="term-cables-null">null modem cable</link> between
the two machines. Just connect the cable to the serial
ports of the 2 machines. <emphasis>A normal serial cable
will not work here</emphasis>, you need a null modem
cable because it has some of the wires inside crossed
over.</para>
</step>
<step>
<title>Booting Up for the Install</title>
<para>It is now time to go ahead and start the install. Put
the <filename>kern.flp</filename> floppy in the floppy
drive of the machine you are doing the headless install
on, and power on the machine.</para>
</step>
<step>
<title>Connecting to Your Headless Machine</title>
<indexterm>
<primary><command>cu</command></primary>
</indexterm>
<para>Now you have to connect to that machine with
&man.cu.1;:</para>
<screen>&prompt.root; <userinput>cu -l /dev/cuaa0</userinput></screen>
</step>
</procedure>
<para>That's it! You should now be able to control the headless machine
through your <command>cu</command> session. It will ask you to
put in the <filename>mfsroot.flp</filename>, and then it will come up
with a selection of what kind of terminal to use. Select the
FreeBSD color console and proceed with your install!</para>
</sect2>
</sect1>
<sect1 id="install-diff-media">
<title>Preparing Your Own Installation Media</title>
<note>
<para>To prevent repetition, <quote>FreeBSD disk</quote> in this context
means a FreeBSD CDROM or DVD that you have purchased or produced
yourself.</para>
</note>
<para>There may be some situations in which you need to create your own
FreeBSD installation media and/or source. This might be physical media,
such as a tape, or a source that <application>sysinstall</application>
can use to retrieve the files, such as a local FTP site, or an &ms-dos;
partition.</para>
<para>For example:</para>
<itemizedlist>
<listitem>
<para>You have many machines connected to your local network, and one
FreeBSD disk. You want to create a local FTP site using the
contents of the FreeBSD disk, and then have your machines use this
local FTP site instead of needing to connect to the Internet.</para>
</listitem>
<listitem>
<para>You have a FreeBSD disk, and FreeBSD does not recognize your CD/DVD
drive, but &ms-dos;/&windows; does. You want to copy the FreeBSD
installations files to a DOS partition on the same computer, and
then install FreeBSD using those files.</para>
</listitem>
<listitem>
<para>The computer you want to install on does not have a CD/DVD
drive or a network card, but you can connect a
<quote>Laplink-style</quote> serial or parallel cable to a computer
that does.</para>
</listitem>
<listitem>
<para>You want to create a tape that can be used to install
FreeBSD.</para>
</listitem>
</itemizedlist>
<sect2 id="install-cdrom">
<title>Creating an Installation CDROM</title>
<para>As part of each release, the FreeBSD project makes available two
CDROM images (<quote>ISO images</quote>). These images can be written
(<quote>burned</quote>) to CDs if you have a CD writer, and then used
to install FreeBSD. If you have a CD writer, and bandwidth is cheap,
then this is the easiest way to install FreeBSD.</para>
<procedure>
<step>
<title>Download the Correct ISO Images</title>
<para>The ISO images for each release can be downloaded from <filename>ftp://ftp.FreeBSD.org/pub/FreeBSD/ISO-IMAGES-<replaceable>arch</replaceable>/<replaceable>version</replaceable></filename> or the closest mirror.
Substitute <replaceable>arch</replaceable> and
<replaceable>version</replaceable> as appropriate.</para>
<para>That directory will normally contain the following images:</para>
<table frame="none">
<title>FreeBSD ISO Image Names and Meanings</title>
<tgroup cols="2">
<thead>
<row>
<entry>Filename</entry>
<entry>Contains</entry>
</row>
</thead>
<tbody>
<row>
<entry><filename><replaceable>version</replaceable>-mini.iso</filename></entry>
<entry>Everything you need to install FreeBSD.</entry>
</row>
<row>
<entry><filename><replaceable>version</replaceable>-disc1.iso</filename></entry>
<entry>Everything you need to install FreeBSD, and as many
additional third party packages as would fit on the
disc.</entry>
</row>
<row>
<entry><filename><replaceable>version</replaceable>-disc2.iso</filename></entry>
<entry>A <quote>live filesystem</quote>, which is used in
conjunction with the <quote>Repair</quote> facility in
<application>sysinstall</application>. A copy of the
FreeBSD CVS tree. As many additional third party packages
as would fit on the disc.</entry>
</row>
</tbody>
</tgroup>
</table>
<!-- XXX we don't need to mention things prior to 4.4 anymore
<note>
<para>The mini ISO was only produced for FreeBSD&nbsp;4.4 and
subsequent releases. The images for discs two, three, and four
were only produced for FreeBSD&nbsp;4.5 and subsequent
releases.</para>
</note>
-->
<para>You <emphasis>must</emphasis> download one of either the mini
ISO image, or the image of disc one. Do not download both of them,
since the disc one image contains everything that the mini ISO
image contains.</para>
<para>Use the mini ISO if Internet access is cheap for you. It will
let you install FreeBSD, and you can then install third party
packages by downloading them using the ports/packages system (see
<xref linkend="ports">) as
necessary.</para>
<para>Use the image of disc one if you want a reasonable selection
of third party packages on the disc as well.</para>
<para>The additional disc images are useful, but not essential,
especially if you have high-speed access to the Internet.</para>
</step>
<step>
<title>Write the CDs</title>
<para>You must then write the CD images to disc. If you will be
doing this on another FreeBSD system then see
<xref linkend="creating-cds"> for more information (in
particular, <xref linkend="burncd"> and
<xref linkend="cdrecord">).</para>
<para>If you will be doing this on another platform then you will
need to use whatever utilities exist to control your CD writer on
that platform. The images provided are in the standard ISO format,
which many CD writing applications support.</para>
</step>
</procedure>
</sect2>
<sect2 id="install-ftp">
<title>Creating a Local FTP Site with a FreeBSD Disk</title>
<indexterm>
<primary>installation</primary>
<secondary>network</secondary>
<tertiary>FTP</tertiary>
</indexterm>
<para>FreeBSD disks are laid out in the same way as the FTP site. This
makes it very easy for you to create a local FTP site that can be used
by other machines on your network when installing FreeBSD.</para>
<procedure>
<step>
<para>On the FreeBSD computer that will host the FTP site, ensure
that the CDROM is in the drive, and mounted on
<filename>/cdrom</filename>.</para>
<screen>&prompt.root; <userinput>mount /cdrom</userinput></screen>
</step>
<step>
<para>Create an account for anonymous FTP in
<filename>/etc/passwd</filename>. Do this by editing
<filename>/etc/passwd</filename> using &man.vipw.8; and adding
this line:</para>
<programlisting>ftp:*:99:99::0:0:FTP:/cdrom:/nonexistent</programlisting>
</step>
<step>
<para>Ensure that the FTP service is enabled in
<filename>/etc/inetd.conf</filename>.</para>
</step>
</procedure>
<para>Anyone with network connectivity to your machine can now
chose a media type of FTP and type in
<userinput>ftp://<replaceable>your machine</replaceable></userinput>
after picking <quote>Other</quote> in the FTP sites menu during
the install.</para>
<warning>
<para>This approach is OK for a machine that is on your local network,
and that is protected by your firewall. Offering up FTP services to
other machines over the Internet (and not your local network)
exposes your computer to the attention of crackers and other
undesirables. We strongly recommend that you follow good security
practices if you do this.</para>
</warning>
</sect2>
<sect2>
<title>Creating Installation Floppies</title>
<indexterm>
<primary>installation</primary>
<secondary>floppies</secondary>
</indexterm>
<para>If you must install from floppy disk (which we suggest you
do <emphasis>not</emphasis> do), either due to unsupported
hardware or simply because you insist on doing things the hard
way, you must first prepare some floppies for the installation.</para>
<para>At a minimum, you will need as many 1.44&nbsp;MB or 1.2&nbsp;MB floppies
as it takes to hold all the files in the
<filename>bin</filename> (binary distribution) directory. If
you are preparing the floppies from DOS, then they
<emphasis>must</emphasis> be formatted using the &ms-dos;
<command>FORMAT</command> command. If you are using &windows;,
use Explorer to format the disks (right-click on the
<devicename>A:</devicename> drive, and select <quote>Format</quote>.</para>
<para>Do <emphasis>not</emphasis> trust factory pre-formatted
floppies. Format them again yourself, just to be sure. Many
problems reported by our users in the past have resulted from
the use of improperly formatted media, which is why we are
making a point of it now.</para>
<para>If you are creating the floppies on another FreeBSD machine,
a format is still not a bad idea, though you do not need to put
a DOS filesystem on each floppy. You can use the
<command>disklabel</command> and <command>newfs</command>
commands to put a UFS filesystem on them instead, as the
following sequence of commands (for a 3.5" 1.44&nbsp;MB floppy)
illustrates:</para>
<screen>&prompt.root; <userinput>fdformat -f 1440 fd0.1440</userinput>
&prompt.root; <userinput>disklabel -w -r fd0.1440 floppy3</userinput>
&prompt.root; <userinput>newfs -t 2 -u 18 -l 1 -i 65536 /dev/fd0</userinput></screen>
<note>
<para>Use <literal>fd0.1200</literal> and
<literal>floppy5</literal> for 5.25" 1.2&nbsp;MB disks.</para>
</note>
<para>Then you can mount and write to them like any other
filesystem.</para>
<para>After you have formatted the floppies, you will need to copy
the files to them. The distribution files are split into chunks
conveniently sized so that five of them will fit on a conventional
1.44&nbsp;MB floppy. Go through all your floppies, packing as many
files as will fit on each one, until you have all of the
distributions you want packed up in this fashion. Each
distribution should go into a subdirectory on the floppy, e.g.:
<filename>a:\bin\bin.aa</filename>,
<filename>a:\bin\bin.ab</filename>, and so on.</para>
<para>Once you come to the Media screen during the install
process, select <guimenuitem>Floppy</guimenuitem> and you
will be prompted for the rest.</para>
</sect2>
<sect2 id="install-msdos">
<title>Installing from an &ms-dos; Partition</title>
<indexterm>
<primary>installation</primary>
<secondary>from MS-DOS</secondary>
</indexterm>
<para>To prepare for an installation from an &ms-dos; partition,
copy the files from the distribution into a directory
called <filename>freebsd</filename> in the root directory of the
partition. For example, <filename>c:\freebsd</filename>. The
directory structure of the CDROM or FTP site must be partially
reproduced within this directory, so we suggest using the DOS
<command>xcopy</command> command if you are copying it from a CD.
For example, to prepare for a minimal installation of
FreeBSD:</para>
<screen><prompt>C:\&gt;</prompt> <userinput>md c:\freebsd</userinput>
<prompt>C:\&gt;</prompt> <userinput>xcopy e:\bin c:\freebsd\bin\ /s</userinput>
<prompt>C:\&gt;</prompt> <userinput>xcopy e:\manpages c:\freebsd\manpages\ /s</userinput></screen>
<para>Assuming that <devicename>C:</devicename> is where you have
free space and <devicename>E:</devicename> is where your CDROM
is mounted.</para>
<para>If you do not have a CDROM drive, you can download the
distribution from <ulink
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel.current;-RELEASE/">ftp.FreeBSD.org</ulink>.
Each distribution is in its own directory; for example, the
<emphasis>base</emphasis> distribution can be found in the <ulink
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel.current;-RELEASE/base/">&rel.current;/base/</ulink>
directory.</para>
<note>
<para>In the 4.X and older releases of &os; the <quote>base</quote>
distribution is called <quote>bin</quote>. Adjust the sample
commands and URLs above accordingly, if you are using one of these
versions.</para>
</note>
<para>For as many distributions you wish to install from an &ms-dos;
partition (and you have the free space for), install each one
under <filename>c:\freebsd</filename> &mdash; the
<literal>BIN</literal> distribution is the only one required for
a minimum installation.</para>
</sect2>
<sect2>
<title>Creating an Installation Tape</title>
<indexterm>
<primary>installation</primary>
<secondary>from QIC/SCSI Tape</secondary>
</indexterm>
<para>Installing from tape is probably the easiest method, short
of an online FTP install or CDROM install. The installation
program expects the files to be simply tarred onto the tape.
After getting all of the distribution files you are interested
in, simply tar them onto the tape:</para>
<screen>&prompt.root; <userinput>cd /freebsd/distdir</userinput>
&prompt.root; <userinput>tar cvf /dev/rwt0 dist1 ... dist2</userinput></screen>
<para>When you perform the installation, you should make
sure that you leave enough room in some temporary directory
(which you will be allowed to choose) to accommodate the
<emphasis>full</emphasis> contents of the tape you have created.
Due to the non-random access nature of tapes, this method of
installation requires quite a bit of temporary storage.</para>
<note>
<para>When starting the installation, the tape must be in the
drive <emphasis>before</emphasis> booting from the boot
floppy. The installation probe may otherwise fail to find
it.</para>
</note>
</sect2>
<sect2>
<title>Before Installing over a Network</title>
<indexterm>
<primary>installation</primary>
<secondary>network</secondary>
<tertiary>serial (SLIP or PPP)</tertiary>
</indexterm>
<indexterm>
<primary>installation</primary>
<secondary>network</secondary>
<tertiary>parallel (PLIP)</tertiary>
</indexterm>
<indexterm>
<primary>installation</primary>
<secondary>network</secondary>
<tertiary>Ethernet</tertiary>
</indexterm>
<para>There are three types of network installations available.
Serial port (SLIP or PPP), Parallel port (PLIP (laplink cable)),
or Ethernet (a standard Ethernet controller (includes some
PCMCIA)).</para>
<para>The SLIP support is rather primitive, and limited primarily
to hard-wired links, such as a serial cable running between a
laptop computer and another computer. The link should be
hard-wired as the SLIP installation does not currently offer a
dialing capability; that facility is provided with the PPP
utility, which should be used in preference to SLIP whenever
possible.</para>
<para>If you are using a modem, then PPP is almost certainly
your only choice. Make sure that you have your service
provider's information handy as you will need to know it fairly
early in the installation process.</para>
<para>If you use PAP or CHAP to connect your ISP (in other words, if
you can connect to the ISP in &windows; without using a script), then
all you will need to do is type in <command>dial</command> at the
<application>ppp</application> prompt. Otherwise, you will need to
know how to dial your ISP using the <quote>AT commands</quote>
specific to your modem, as the PPP dialer provides only a very
simple terminal emulator. Please refer to the user-ppp <link
linkend="userppp">handbook</link> and <ulink
url="&url.books.faq;/ppp.html">FAQ</ulink> entries for further information.
If you have problems, logging can be directed to the screen using
the command <command>set log local ...</command>.</para>
<para>If a hard-wired connection to another FreeBSD (2.0-R or
later) machine is available, you might also consider installing
over a <quote>laplink</quote> parallel port cable. The data rate
over the parallel port is much higher than what is typically
possible over a serial line (up to 50&nbsp;kbytes/sec), thus resulting
in a quicker installation.</para>
<para>Finally, for the fastest possible network installation, an
Ethernet adapter is always a good choice! FreeBSD supports most
common PC Ethernet cards; a table of supported cards (and their
required settings) is provided in the Hardware Notes for each
release of FreeBSD. If you are using one of the supported PCMCIA
Ethernet cards, also be sure that it is plugged in
<emphasis>before</emphasis> the laptop is powered on! FreeBSD does
not, unfortunately, currently support hot insertion of PCMCIA cards
during installation.</para>
<para>You will also need to know your IP address on the network,
the netmask value for your address class, and the name of your
machine. If you are installing over a PPP connection and do not
have a static IP, fear not, the IP address can be dynamically
assigned by your ISP. Your system administrator can tell you
which values to use for your particular network setup. If you
will be referring to other hosts by name rather than IP address,
you will also need a name server and possibly the address of a
gateway (if you are using PPP, it is your provider's IP address)
to use in talking to it. If you want to install by FTP via a
HTTP proxy, you will also need the proxy's address.
If you do not know the answers to all or most of these questions,
then you should really probably talk to your system administrator
or ISP <emphasis>before</emphasis> trying this type of
installation.</para>
<sect3>
<title>Before Installing via NFS</title>
<indexterm>
<primary>installation</primary>
<secondary>network</secondary>
<tertiary>NFS</tertiary>
</indexterm>
<para>The NFS installation is fairly straight-forward. Simply
copy the FreeBSD distribution files you want onto an NFS server
and then point the NFS media selection at it.</para>
<para>If this server supports only <quote>privileged port</quote>
(as is generally the default for Sun workstations), you will
need to set the option <option>NFS Secure</option> in the
Options menu before installation can proceed.</para>
<para>If you have a poor quality Ethernet card which suffers
from very slow transfer rates, you may also wish to toggle the
<option>NFS Slow</option> flag.</para>
<para>In order for NFS installation to work, the server must
support subdir mounts, for example, if your FreeBSD&nbsp;&rel.current; distribution
directory lives on:
<filename>ziggy:/usr/archive/stuff/FreeBSD</filename>, then
<hostid>ziggy</hostid> will have to allow the direct mounting
of <filename>/usr/archive/stuff/FreeBSD</filename>, not just
<filename>/usr</filename> or
<filename>/usr/archive/stuff</filename>.</para>
<para>In FreeBSD's <filename>/etc/exports</filename> file, this
is controlled by the <option>-alldirs</option> options. Other NFS
servers may have different conventions. If you are getting
<errorname>permission denied</errorname> messages from the
server, then it is likely that you do not have this enabled
properly.</para>
</sect3>
</sect2>
</sect1>
</chapter>
<!--
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" "part" "chapter")
End:
-->