                    INSTALLATION GUIDE FOR FreeBSD 2.0.5

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.



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!  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.


1.3     Can I mount my DOS extended partitions?

This feature isn't in FreeBSD 2.0.5 but should be in 2.1.  We've laid
all the groundwork for making this happen, now we just need to do the
last 1% of the work involved.


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!

However, there is 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.1u1).



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:  Before installing 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, we simply cannot say as we
have no hand or say in their creation).  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 "go".  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, but yet create all the intermediate files in
/usr/ports, which is presumably on a more writable media! :-)

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).  This will be
fixed for 2.1, but for now this simple work-around will ensure that
your CDROM is detected properly.

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 communications links:

        Serial port:    SLIP / PPP
        Parallel port:  PLIP (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"
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) is 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 link 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 support
        "subdir mounts"; e.g., if your FreeBSD 2.0.5 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.0.5.  A full menu of
        reasonable choices from almost anywhere in the world is provided
        by 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.0.5-RELEASE
        
        [Substitute "ALPHA" for "RELEASE" during the ALPHA test period!]

        If you are installing through a firewall then you should probably
        select ``Passive mode'' ftp, which is the default.  If you are
        talking to a server which does not support passive mode for some
        reason, see the Options menu to select Active mode transfers.


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 this not be true, 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, 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 objective!

Meanwhile, you may also find the following "typical installation sequence"
to be helpful:

o Boot the boot floppy.  After a boot sequence which can take
  anywhere from from 30 seconds to 3 minutes, depending on 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 possible causes.

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

o If English is not your native language, you may wish to proceed
  directly to the Language option and set your preferred language.
  This will bring up some of the documentation in that language
  instead of english.

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

o Select Proceed, bringing you to the Installation Menu.

Installation Menu:

o You can do anything you like in this menu without altering
  your system _except_ for "Commit", which will perform any
  requests to alter your system you may have made.

  If you're confused at any point, the F1 key usually pulls
  up the right information for the screen you're in.

        o The first step is generally `Partition', which allows
          you to chose how your drives will be used for FreeBSD.

        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).

        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 sound applicable, select Custom.

        o Next, the `Media' menu allows you to specify what kind of
          media you wish to install from.  If a desired media choice is
          found and configured automatically then this menu will simply
          return, otherwise you'll be asked for additional details on
          the media device type.

        o Finally, the Commit command will actually perform all the
          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 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 some).  Properly configuring
          your network here will allow FreeBSD to come up on the network
          when you first reboot from the hard disk.

        o Exit returns you to the top menu.


  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.  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!

                                        Jordan

---- End of Installation Guide ---
