                QUICK INSTALLATION GUIDE FOR FREEBSD 2.1

This manual documents the process of installing FreeBSD on your
machine.  Please also see the Hardware Guide for hardware-specific
installation instructions (how to configure your hardware, what sorts
of things to watch out for, etc) before starting a new installation.


Table of Contents:
==================

1.0     DOS User's Q&A section.
        1.1     How do I make space for FreeBSD?
        1.2     Can I use compressed DOS filesystems from FreeBSD?
        1.3     Can I use DOS extended partitions?
        1.4     Can I run DOS executables under FreeBSD?

2.0     Preparing for the installation.
        2.1     Before installing from CDROM
        2.2     Before installing from Floppy
        2.3     Before installing from a DOS partition
        2.4     Before installing from QIC/SCSI tape
        2.5     Before installing over a network
                2.5.1   Preparing for NFS Installation 
                2.5.2   Preparing for FTP Installation

3.0     Installing FreeBSD.

3.1     Repairing an existing FreeBSD installation.


1.0     DOS user's Question and Answer section
===     ======================================

1.1     Help!  I have no space!  Do I need to delete everything first?

If your machine is already running DOS and has little or no free space
available for FreeBSD's installation, all is not lost!  You may find
the "FIPS" utility, provided in the tools/ subdirectory on the FreeBSD
CDROM or on the various FreeBSD ftp sites, to be quite useful.

FIPS allows you to split an existing DOS partition into two pieces,
preserving the original partition and allowing you to install onto the
second free piece.  You first "defrag" your DOS partition, using the
DOS 6.xx "DEFRAG" utility or the Norton Disk tools, then run FIPS.  It
will prompt you for the rest of the information it needs.  Afterwards,
you can reboot and install FreeBSD on the new free slice.  See the
Distributions menu for an estimation of how much free space you'll
need for the kind of installation you want.


1.2     Can I use compressed DOS filesystems from FreeBSD?

No.  If you are using a utility such as Stacker(tm) or DoubleSpace(tm),
FreeBSD will only be able to use whatever portion of the filesystem
you leave uncompressed.  The rest of the filesystem will show up as
one large file (the stacked/dblspaced file!).  DO NOT REMOVE THAT
FILE as you will probably regret it greatly!

It is probably better to create another uncompressed DOS primary
partition and use this for communications between DOS and FreeBSD if
such is your desire.


1.3     Can I mount my DOS extended partitions?

NOTE for 2.1:  This feature MAY work but is currently untested.


1.4     Can I run DOS binaries under FreeBSD?

Not yet!  We'd like to add support for this someday, but are still
lacking anyone to actually do the work.  Ongoing work with Linux's
DOSEMU utility may bring this much closer to being a reality sometime
soon.  Send mail to hackers@freebsd.org if you're interested in
joining this effort!

There is, however, a neat utility called "pcemu" in the ports
collection which emulates an 8088 and enough BIOS services to run DOS
text mode applications.  It requires the X Window System (provided as
XFree86 3.1.2) to operate.



2.0     Preparing for the installation
===     ==============================

2.1     Before installing from CDROM:

If your CDROM is of an unsupported type, such as an IDE CDROM, then
please skip to section 2.3 which describes how to install from a DOS
partition.

There is not a lot of preparatory work that needs to be done to
successfully install from one of Walnut Creek's FreeBSD CDROMs (other
CDROM distributions may work as well, though we cannot say for certain
as we have no hand or say in how they're created).  You can either
boot into the CD installation directly from DOS using Walnut Creek's
supplied ``install.bat'' batch file or you can make a boot floppy with
the ``makeflp.bat'' command.

For the easiest interface of all (from DOS), type "view".  This
will bring up a DOS menu utility that leads you through all
the available options.

If you're creating the boot floppy from a UNIX machine, you may find
that ``dd if=floppies/boot.flp of=/dev/rfd0'' or
``dd if=floppies/boot.flp of=/dev/floppy'' works well, depending on
your hardware and operating system environment.

Once you've booted from DOS or floppy, you should then be able to
select CDROM as the media type in the Media menu and load the entire
distribution from CDROM.  No other types of installation media should
be required.

After your system is fully installed and you have rebooted from the
hard disk, you should find the CD mounted on the directory /cdrom.  A
utility called `lndir' comes with the XFree86 distribution which you
may also find useful: It allows you to create "link tree" directories
to things on Read-Only media like CDROM.  One example might be
something like this:

        mkdir /usr/ports
        lndir /cdrom/ports /usr/ports

Which would allow you to then "cd /usr/ports; make" and get all the
sources from the CD while creating all the intermediate files in
/usr/ports, which is presumably on a more writable media! :-)

This is, in fact, what the Ports entry in the Configuration menu does
at installation time if you select it (this option is also offered to
you as part of the Novice installation).

SPECIAL NOTE: Before invoking the installation, be sure that the CDROM
is in the drive so that the "probe" can find it!  This is also true if
you wish the CDROM to be added to the default system configuration
automatically during the install (whether or not you actually use it
as the installation media).

Finally, if you would like people to be able to FTP install FreeBSD
directly from the CDROM in your machine, you'll find it quite easy.
After the machine is fully installed, you simply need to add the
following line to the password file (using the vipw command):

        ftp:*:99:99::0:0:FTP:/cdrom:/nonexistent

No further work is necessary.  The other installers will now be able
to chose a Media type of FTP and type in: ftp://<your machine> after
picking "Other" in the ftp sites menu!


2.2     Before installing from Floppy:

If you must install from floppy disks, either due to unsupported
hardware or just because you enjoy doing things the hard way, you must
first prepare some floppies for the install.

The first floppy you'll need is ``floppies/root.flp'', which is
somewhat special in that it's not a DOS filesystem floppy at all, but
rather an "image" floppy (it's actually a gzip'd cpio file).  You can
use the rawrite.exe program to do this under DOS, or ``dd'' to do it
on a UNIX Workstation (see notes in section 2.1 concerning the
``floppies/boot.flp'' image).  Once this floppy is made, go on to make
the distribution set floppies:

You will need, at minimum, as many 1.44MB or 1.2MB floppies as it
takes to hold all files in the bin (binary distribution) directory.
THESE floppies *must* be formatted using MS-DOS, using the FORMAT
command in MS-DOS or the File Manager format command in Microsoft
Windows(tm).  Don't trust Factory Preformatted floppies!  Format them
again yourself, just to make sure!

Many problems reported by our users in the past have resulted from the
use of improperly formatted media, so we simply take special care to
mention it here!

After you've DOS formatted the floppies, you'll need to copy the files
onto them.  The distribution files are split into chunks conveniently
sized so that 5 of them will fit on a conventional 1.44MB floppy.  Go
through all your floppies, packing as many files as will fit on each
one, until you've got all the distributions you want packed up in this
fashion.  Each distribution should go into a subdirectory on the
floppy, e.g.: a:\bin\bin.aa, a:\bin\bin.ab, ...

Once you come to the Media screen of the install, select "Floppy" and
you'll be prompted for the rest.


2.3     Before installing from a DOS partition:

To prepare for installation from an MS-DOS partition you should simply
copy the files from the distribution into a directory called
"FREEBSD".  For example, to do a minimal installation of FreeBSD from
DOS using files copied from the CDROM, you might do something like
this:

        C> MD C:\FREEBSD
        C> XCOPY /S E:\DISTS\BIN C:\FREEBSD\BIN
        C> XCOPY /S E:\FLOPPIES C:\FREEBSD\FLOPPIES

Asssuming that `C:' was where you had free space and `E:' was where
your CD was mounted.  Note that you need the FLOPPIES directory
because the `root.flp' image is automatically looked for there when
you're doing a DOS installation.

For as many `DISTS' as you wish to install from DOS (and you have free
space for), install each one in a directory under `C:\FREEBSD' - the
BIN dist is only the minimal requirement.


2.4     Before installing from QIC/SCSI Tape:

Installing from tape is probably the easiest method, short of an
on-line install using FTP or a CDROM install.  The installation
program expects the files to be simply tar'ed onto the tape, so after
getting all of the files for distribution you're interested in, simply
tar them onto the tape with a command like:

        cd /freebsd/distdir
        tar cvf /dev/rwt0 (or /dev/rst0) dist1 .. dist2

Make sure that the `floppies/' directory is one of the "dists" given
above, since the installation will look for `floppies/root.flp' on
the tape.

When you go to do the installation, you should also make sure that you
leave enough room in some temporary directory (which you'll be allowed
to choose) to accommodate the FULL contents of the tape you've
created.  Due to the non-random access nature of tapes, this method of
installation requires quite a bit of temporary storage!  You should
expect to require as much temporary storage as you have stuff written
on tape.

SPECIAL NOTE:  When going to do the installation, the tape must be in
the drive *before* booting from the boot floppy.  The installation
"probe" may otherwise fail to find it.


2.5     Before installing over a network:

You can do network installations over 3 types of connections:

        Serial port:    SLIP / PPP
        Parallel port:  PLIP (using ``laplink'' cable)
        Ethernet:       A standard ethernet controller (includes some PCMCIA).

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 doesn't currently offer a dialing capability; that
facility is provided with the PPP utility, which should be used in
preference to SLIP whenever possible.

If you're using a modem, then PPP is almost certainly your only
choice.  Make sure that you have your service provider's information
handy as you'll need to know it fairly soon in the installation
process.  You will need to know, at the minimum, your service
provider's IP address and possibly your own (though you can also leave
it blank and allow PPP to negotiate it with your ISP).  You also need
to know how to use the various "AT commands" to dial the ISP with your
particular modem as the PPP dialer provides only a very simple
terminal emulator.

If a hard-wired connection to another FreeBSD (2.0R or later) machine
is available, you might also consider installing over a "laplink"
style parallel port cable.  The data rate over the parallel port is
much higher than what is typically possible over a serial line (up to
50k/sec), thus resulting in a quicker installation.

Finally, for the fastest possible network installation, an ethernet
adaptor is always a good choice!  FreeBSD supports most common PC
ethernet cards, a table of supported cards (and their required
settings) being provided as part of the FreeBSD Hardware Guide.  See
the Documentation menu on the boot floppy.  If you are using one of
the supported PCMCIA ethernet cards, also be sure that it's plugged in
_before_ the laptop is powered on!  FreeBSD does not, unfortunately,
currently support "hot insertion" of PCMCIA cards.

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.
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'll also need a name server and
possibly the address of a gateway (if you're using PPP, it's your
provider's IP address) to use in talking to it.  If you do not know
the answers to all or most of these questions then you should really
probably talk to your system administrator _first_ before trying this
type of installation!

Once you have a network connection of some sort working, the
installation can continue over NFS or FTP.

2.5.1   Preparing for NFS installation:

        NFS installation is fairly straight-forward: Simply copy the
        FreeBSD distribution files you want onto a server somewhere
        and then point the NFS media selection at it.

        If this server supports only "privileged port" access (as is
        generally the default for Sun workstations), you will need to set
        this option in the Options menu before installation can proceed.

        If you have a poor quality ethernet card which suffers from very
        slow transfer rates, you may also wish to toggle the appropriate
        Options flag.

        In order for NFS installation to work, the server must also support
        "subdir mounts", e.g. if your FreeBSD 2.1 distribution directory
        lives on:  ziggy:/usr/archive/stuff/FreeBSD
        Then ziggy will have to allow the direct mounting of
        /usr/archive/stuff/FreeBSD, not just /usr or /usr/archive/stuff.

        In FreeBSD's /etc/exports file this is controlled by the
        ``-alldirs'' option.  Other NFS servers may have different
        conventions.  If you are getting `Permission Denied' messages
        from the server then it's likely that you don't have this
        enabled properly!


2.5.2   Preparing for FTP Installation

        FTP installation may be done from any mirror site containing a
        reasonably up-to-date version of FreeBSD 2.1.  A full menu of
        reasonable choices for almost any location in the world is provided
        in the FTP site menu.

        If you are installing from some other FTP site not listed in this
        menu, or you are having troubles getting your name server configured
        properly, you can also specify your own URL by selecting the ``Other''
        choice in that menu.  A URL can also be a direct IP address, so
        the following would work in the absence of a name server:

                ftp://192.216.222.4/pub/FreeBSD/2.1-RELEASE
        
        There are two FTP installation modes you can use:

           o FTP:

             For all FTP transfers, use the standard "Active" mode for transfers.
             This will not work through most firewalls but will often work best
             with older ftp servers that do not support passive mode.  If your
             connection hangs with passive mode, try this one!

           o FTP Passive:

             For all FTP transfers, use "Passive" mode.  This allows the user
             to pass through firewalls that do not allow incoming connections
             on random port addresses.

        NOTE: ACTIVE AND PASSIVE MODES ARE NOT THE SAME AS A `PROXY'
        CONNECTION, WHERE A PROXY FTP SERVER IS LISTENING ON A DIFFERENT
        PORT!

        In such instances, you should specify the URL as something like:

                ftp://foo.bar.com:1234/pub/FreeBSD

        Where "1234" is the port number of the proxy ftp server.



3.      Installing FreeBSD
--      ------------------

Once you've taken note of the appropriate preinstallation steps, you
should be able to install FreeBSD without any further trouble.

Should the installation fail then you may wish to go back and re-read
the relevant preparation section (section 2.x) for the installation
media type you're trying to use - perhaps there's a helpful hint there
that you missed the first time?  If you're having hardware trouble or
FreeBSD refuses to boot at all then read the Hardware Guide provided
on the boot floppy for a list of possible solutions.

The FreeBSD boot floppy contains all the on-line documentation you
should need to be able to navigate through an installation and if it
doesn't then I'd like to know what you found most confusing!  It is
the objective of the FreeBSD installation program (sysinstall) to be
self-documenting enough that painful "step-by-step" guides are no
longer necessary.  It may take us a little while to reach that
objective, but that's the basic idea!

You may also find the following "typical installation sequence" to be
useful reading:

o Boot the boot floppy.  After a boot sequence which can take
  anywhere from from 30 seconds to 3 minutes, depending on the
  speed of your hardware, you should be presented with a menu of
  initial choices.  If the floppy doesn't boot at all, or the boot
  hangs at some stage, go read the Q&A section of the Hardware
  Guide for some possible causes.

o Press F1.  You should see some basic usage instructions on
  the menu system and general navigation within it.  If you haven't
  used this installation system before then PLEASE read this
  thoroughly!

o Select the Options item and set any special preferences you may have.

o Select a Custom, Express or Novice install depending on whether or not
  you'd like the installation to give you a high degree of control over each
  step of the installation, run through it as quickly as possible or simply
  lead you through it, chosing reasonable defaults when possible.  Further
  details on the different installation types are given below.

o The Configure menu choice allows you to furthur configure your FreeBSD
  installation by giving you menu-driven access to various system
  defaults.  Some items, like networking, may be especially important if
  you did a CDROM/Tape/Floppy installation and have not yet configured
  your network interfaces (assuming you have any).  Properly configuring
  such interfaces here will allow FreeBSD to come up on the network when
  you first reboot from the hard disk.


Installation type overview:

o Custom installation:

You can do anything you like in this menu without altering your system
_except_ for "Commit", which will perform any pending actions you may
have selected.  Some of the menu options will also have direct `Write'
commands available for commiting an operation immediately, but they
should only be used if you're absolutely sure it's necessary.  It's
generally safer to stack up your changes and then commit them all at
once so that you're left with the option of changing your mind up to
the very last moment.

If you're confused at any point, the F1 key will pull up what is
hopefully some helpful information for the screen you're in.


o Express installation:

This installation will invoke all the appropriate steps in order as
if you'd selected them one by one from the custom installation menu.
It assumes that you *know what you are doing* and have run the
installation at least once before.  If this is not the case, the
Novice installation method is recommended.


o Novice installation:

The Novice installation leads you through the required stages in the
proper order and presents you with various helpful prompts in between.
Once the system is installed, it will also present you with the
opportunity to perform a variety of "post install" actions.

A quick synopsis of the stages involved in a novice installation
follows:

        o The first step is the `Partition Editor', which allows
          you to chose how your drives will be used for FreeBSD.
          If you're dedicating an entire drive to FreeBSD, the
          `A' command is probably all you need to type here.

        o Next, with the `Label Editor', you can specify how the space
          in any allocated FreeBSD partitions should be used by FreeBSD,
          or where to mount a non-FreeBSD partition (such as DOS).  If
          you want the standard layout, simply type `A' here.

        o Next, the `Distributions' menu allows you to specify which
          parts of FreeBSD you wish to load.  A good choice is
          "User" for a small system or "Developer" for someone
          wanting a bit more out of FreeBSD.  If none of the existing
          collections seem applicable, select Custom.

        o Next, the `Media' menu allows you to specify what kind of
          media you wish to install from.  If a given media type requires
          extra information, such as networking information for an FTP
          or NFS install, it will also be asked at this point.

        o Finally, you'll be prompted to commit all of these actions at
          once (nothing has been written to your disk so far, nor will
          it until you give the final confirmation).

          All new or changed partition information will be written
          out, file systems will be created and/or non-destructively
          labelled (depending on how you set their newfs flags in the
          Label Editor) and all selected distributions will be
          extracted.

        o After the system is fully installed, you'll then have the
          option to configure the system in various ways, install a
          WEB server, etc.

At this point, you're generally done with the sysinstall utility and
can select the final `Quit'.  If you're running it as an installer
(e.g., before the system is all the way up) then the system will now
reboot after you press return one last time.  If you selected the boot
manager option, you will see a small boot menu with an `F?' prompt.
Press the function key for BSD (it will be shown) and you should boot up
into FreeBSD off the hard disk.

If this fails to happen for some reason, see the Q & A section
of the Hardware Guide for possible clues!

Should you wish to re-enter this installation later, you will find it
under /stand/sysinstall on the installed system.

                                        Jordan

---- End of Installation Guide ---
