So, you would like to try out FreeBSD on your system?
This section is a quick-start guide for what you need to
do. FreeBSD can be installed from a variety of media
including CD-ROM, floppy disk, magnetic tape, an MS-DOS
partition, and if you have a network connection, via
anonymous ftp or NFS.
Regardless of the installation media you choose, you can
get started by downloading the installation disk
as described below. Booting your computer with disk will
provide important information about compatibility between
FreeBSD and your hardware which could dictate which
installation options are possible. It can also provide
early clues to compatibility problems that could prevent
FreeBSD running on your system at all. If you plan on
installing via anonymous FTP, then this installation disk
is all you need to download.
For more information on obtaining the FreeBSD distribution
itself, please see in the Appendix.
So, to get the show on the road, follow these steps:
Review the section of this installation guide to
be sure that your hardware is supported by FreeBSD. It
may be helpful to make a list of any special cards you
have installed, such as SCSI controllers, Ethernet
adapters or sound cards. This list should include
relevant configuration parameters such as interrupts
(IRQ) and IO port addresses. Download the file to your hard
drive, and be sure to tell your browser to
save rather than display.
Note: This disk image can be used for
both 1.44 megabyte 3.5 inch floppy disks and
1.2 megabyte 5.25 inch floppy disks.Make the installation boot disk from the image file:
If you are using MS-DOS download
, then run it:
C:\> rawrite
The
program will prompt you for the floppy drive
containing the disk you want to write to (A: or
B:) and the name of the file to put on disk (boot.flp).
If you are using a UNIX system:
% dd if=boot.flp of=disk_device
where disk_device is the /dev
entry for the floppy drive. On FreeBSD systems, this
is /dev/fd0 for the A: drive and
/dev/fd1 for the B: drive.
With the installation disk in the A: drive, reboot your
computer. You should get a boot prompt something like this:
>> FreeBSD BOOT ...
Use hd(1,a)/kernel to boot sd0 when wd0 is also installed.
Usage: [[hd(1,a)]/kernel][-abcCdhrsv]
Use ? for file list or press Enter for defaults
Boot:
If you do not type anything, FreeBSD will automatically boot
with its default configuration after a delay of about
five seconds. As FreeBSD boots, it probes your computer
to determine what hardware is installed. The results of
this probing is displayed on the screen.
When the booting process is finished, The main FreeBSD
installation menu will be displayed.
If something goes wrong...
Due to limitations of the PC architecture, it is
impossible for probing to be 100 percent reliable. In the event
that your hardware is incorrectly identified, or that the
probing causes your computer to lock up, first check the
section of this installation guide to be
sure that your hardware is indeed supported by FreeBSD.
If your hardware is supported, reset the computer and when
the Boot: prompt comes up, type -c. This puts
FreeBSD into a configuration mode where you can supply
hints about your hardware. The FreeBSD kernel on the
installation disk 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
-c option at boot to tell FreeBSD where things are.
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.
In the configuration mode, you can:
List the device drivers installed in the kernel.Disable device drivers for hardware not present in your
system.Change the IRQ, DRQ, and IO port addresses used by a
device driver.
While at the config> prompt, type
help for more information on the available
commands. After adjusting the kernel to match how you have
your hardware configured, type quit at the
config> prompt to continue booting with the new
settings.
After FreeBSD has been installed, changes made in the
configuration mode will be permanent so you do not have
to reconfigure every time you boot. Even so, it is likely
that you will want to build a custom kernel to optimize the
performance of your system. See for more information on
creating custom kernels.
Supported Configurations
FreeBSD currently runs on a wide variety of ISA, VLB,
EISA and PCI bus based PC's, ranging from 386sx to
Pentium class machines (though the 386sx is not
recommended). Support for generic IDE or ESDI drive
configurations, various SCSI controller, network and
serial cards is also provided.
A minimum of five megabytes of RAM is required to run FreeBSD.
To run the X-window system, eight megabytes of RAM is the
recommended minimum.
Following is a list of all disk controllers and Ethernet
cards currently known to work with FreeBSD. Other
configurations may very well work, and we have simply not
received any indication of this.
Disk Controllers
WD1003 (any generic MFM/RLL)
WD1007 (any generic IDE/ESDI)
IDE
ATA
Adaptec 152x series ISA SCSI controllers
Adaptec 154x series ISA SCSI controllers
Adaptec 174x series EISA SCSI controller in
standard and enhanced mode.
Adaptec 274x/284x/2940/3940
(Narrow/Wide/Twin)
series EISA/VLB/PCI SCSI controllers
Adaptec
AIC-6360 based boards,
which includes the AHA-152x and SoundBlaster SCSI
cards.
Note: You cannot boot from the
SoundBlaster cards as they have no on-board BIOS,
which is necessary for mapping the boot device into
the system BIOS I/O vectors. They are perfectly
usable for external tapes, CDROMs, etc, however.
The same goes for any other AIC-6x60 based card
without a boot ROM. Some systems DO have a boot
ROM, which is generally indicated by some sort of
message when the system is first powered up or
reset. Check your system/board documentation for
more details.
Buslogic 545S & 545c
Note: that Buslogic was formerly known as "Bustek".
Buslogic 445S/445c VLB SCSI controller
Buslogic 742A/747S/747c EISA SCSI controller.
Buslogic 946c PCI SCSI controller
Buslogic 956c PCI SCSI controller
NCR 53C810/53C815/53C825/53C860/53C875 PCI SCSI controller.
NCR5380/NCR53400 (``ProAudio Spectrum'') SCSI controller.
DTC 3290 EISA SCSI controller in 1542 emulation mode.
UltraStor 14F/24F/34F SCSI controllers.
Seagate ST01/02 SCSI controllers.
Future Domain 8xx/950 series SCSI controllers.
WD7000 SCSI controllers.
With all supported SCSI controllers, full support is
provided for SCSI-I & SCSI-II peripherals,
including Disks, tape drives (including DAT) and CD ROM
drives.
The following CD-ROM type systems are supported at this
time:
SoundBlaster SCSI and ProAudio Spectrum SCSI (cd)
Mitsumi (all models) proprietary interface (mcd)
Matsushita/Panasonic (Creative)
CR-562/CR-563 proprietary interface (matcd)
Sony proprietary interface (scd)
ATAPI IDE interface
(experimental and should be considered ALPHA quality!)
(wcd)
Ethernet cards
Allied-Telesis AT1700 and RE2000 cards
SMC Elite 16 WD8013 Ethernet interface, and
most other WD8003E, WD8003EBT, WD8003W, WD8013W,
WD8003S, WD8003SBT and WD8013EBT based clones. SMC
Elite Ultra is also supported.
DEC EtherWORKS III NICs (DE203, DE204, and DE205)
DEC EtherWORKS II NICs (DE200, DE201, DE202, and DE422)
DEC DC21040/DC21041/DC21140 based NICs:
ASUS PCI-L101-TB
Accton ENI1203
Cogent EM960PCI
Compex CPXPCI/32C
D-Link DE-530
DEC DE435
Danpex EN-9400P3
JCIS Condor JC1260
Linksys EtherPCI
Mylex LNP101
SMC EtherPower 10/100 (Model 9332)
SMC EtherPower (Model 8432)
Zynx ZX342
DEC FDDI (DEFPA/DEFEA) NICs
Fujitsu FMV-181 and FMV-182
Intel EtherExpress
Isolan AT 4141-0 (16 bit)
Isolink 4110 (8 bit)
Novell NE1000, NE2000, and NE2100 ethernet interface.
3Com 3C501 cards
3Com 3C503 Etherlink II
3Com 3c505 Etherlink/+
3Com 3C507 Etherlink 16/TP
3Com 3C509, 3C579, 3C589 (PCMCIA) Etherlink III
Toshiba ethernet cards
PCMCIA ethernet cards from IBM and National
Semiconductor are also supported.
Note: FreeBSD does not currently support
PnP (plug-n-play) features present on some ethernet
cards. If your card has PnP and is giving you problems,
try disabling its PnP features.
Miscellaneous devices
AST 4 port serial card using shared IRQ.
ARNET 8 port serial card using shared IRQ.
BOCA IOAT66 6 port serial card using shared IRQ.
BOCA 2016 16 port serial card using shared IRQ.
Cyclades Cyclom-y Serial Board.
STB 4 port card using shared IRQ.
SDL Communications Riscom/8 Serial Board.
Adlib, SoundBlaster, SoundBlaster Pro,
ProAudioSpectrum, Gravis UltraSound, Gravis UltraSound MAX
and Roland MPU-401 sound cards.
FreeBSD currently does not support IBM's microchannel
(MCA) bus, but support is apparently close to
materializing. Details will be posted as the situation
develops.
Preparing for the installation
There are a number of different methods by which FreeBSD
can be installed. The following describes what
preparation needs to be done for each type.
Before installing from CDROM
If your CDROM is of an unsupported type, such as an
IDE CDROM, then please skip to .
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 [NOTE: If you're using an IDE CDROM, use
the inst_ide.bat or atapiflp.bat batch files instead].
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 are creating the boot floppy from a UNIX machine,
see for examples. of how to create the boot floppy.
Once you have 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 can mount the cdrom at any time by
typing: mount /cdrom
Before removing the CD again, also note that it's necessary to first
type: umount /cdrom. Don't just remove it from the drive!
Special note: Before invoking the
installation, be sure that the CDROM is in the drive
so that the install 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 will 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
Anyone with network connectivity to your machine (and permission
to log into it) can now chose a Media type of FTP and type
in: ftp://your machine after picking ``Other''
in the ftp sites menu.
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 that you will need in addition to the boot.flp
image is ``floppies/root.flp'', which is somewhat special in that
it's not a DOS filesystem floppy at all, but rather a floppy "image"
(it's actually a gzip'd cpio file). You can create this floppy in
the same way that you created the boot floppy . Once this floppy is
made, you can go on to make the distribution set floppies
using ordinary DOS or UFS (if you're preparing the floppies on
another FreeBSD machine) formatted diskettes.
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. If you're preparing these floppies under DOS, then
THESE floppies *must* be formatted using the MS-DOS FORMAT
command. If you're using Windows, use the Windows File
Manager format command.
Do not 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, which is why I'm taking such
special care to mention it here!
If you're creating the floppies from another FreeBSD machine,
a format is still not a bad idea though you don't need to put
a DOS filesystem on each floppy. You can use the `disklabel'
and `newfs' commands to put a UFS filesystem on them instead,
like so:
disklabel -w -r fd0 floppy3 (use floppy5 for 1.2MB disks)
newfs /dev/rfd0
Then you can mount and write to them like any other file
system.
After you have DOS formatted the floppies, you will
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 have 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, and so on.
Once you come to the Media screen of the install,
select ``Floppy'' and you will be prompted for the rest.
Before installing from a MS-DOS partition
To prepare for installation from an MS-DOS partition,
copy the files from the distribution into a directory
called C:\FREEBSD. The directory tree structure
of the CDROM must be partially reproduced within this directory
so we suggest using the DOS xcopy
command. For example, to prepare for a minimal installation of
FreeBSD:
C> MD C:\FREEBSD
C> XCOPY /S E:\DISTS\BIN C:\FREEBSD\BIN\
C> XCOPY /S E:\FLOPPIES C:\FREEBSD\FLOPPIES\
assuming that C: is where you have free space
and E: is where your CDROM is mounted. Note
that you need the FLOPPIES directory because
the root.flp image is needed during an MS-DOS
installation.
For as many `DISTS' you wish to install from MS-DOS
(and you have free space for), install each one under
C:\FREEBSD - the BIN dist is only the
minimal requirement. If you have room on your MS-DOS
partition for all the distributions, you could replace
the last line above with:
C> XCOPY /S E:\DISTS C:\FREEBSD\
which would copy all the subdirectories of
E:\DISTS to C:\FREEBSD.
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 are 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 will be allowed to choose) to
accommodate the full 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. You should expect to require as
much temporary storage as you have stuff written on
tape.
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.Before installing over a network
You can do network installations over 3 types of
communications links:
Serial port SLIP or 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
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.
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 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 in . If you are using one of the supported
PCMCIA ethernet cards, also be sure that it is 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 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 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.
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.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 is likely that you do not have this enabled
properly.
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 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.1.0-RELEASE
There are two FTP installation modes you can use:
FTP Active
For all FTP transfers, use ``Active'' 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!
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.
Installing FreeBSD
Once you have 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 above
for the installation media type you are trying to use,
perhaps there is a helpful hint there that you missed the
first time? If you are 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 does not then we would
like to know what you found most confusing. Send your
comments to . 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 is the objective!
Meanwhile, you may also find the following ``typical
installation sequence'' to be helpful:
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 does not boot at all, or the boot hangs at some
stage, go read the Q&A section of the Hardware Guide
for possible causes.
Press F1. You should see some basic usage
instructions on the menu system and general
navigation. If you have not used this menu system
before then PLEASE read this thoroughly!
Select the Options item and set any special
preferences you may have.
Select a Custom or Express install, depending on
whether or not you would like the installation to give
you a high degree of control over each step of the
installation or simply lead you through it, choosing
reasonable defaults when possible. See details on
both installation types below.
The Configure menu choice allows you to further
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.
Express installation
The express installation is not too much different than
the Custom one except that it leads you through the
required stages in the proper order and presents you
with various helpful prompts along the way.
The first step is the `Partition Editor', which
allows you to chose how your drives will be used
for FreeBSD. If you are dedicating an entire drive
to FreeBSD, the `A' command is probably all you
need to type here.
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.
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.
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 will be asked for additional details on
the media device type.
Finally, you will 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 labeled
(depending on how you set their newfs flags in the
Label Editor) and all selected distributions will
be extracted.
At this point, you are generally done with the
sysinstall utility and can select the final `Quit'. If
you are 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!
Custom installation
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. Some of the menu options will also
have direct `Write' commands available for committing an
operation immediately, but they should only be used if
you are absolutely sure it is necessary. It is generally
better to make your changes and then commit them all at
once so that you are left with the option of changing
your mind up to the very last minute.
If you are confused at any point, the F1 key usually
pulls up the right information for the screen you are
in.
MS-DOS user's Questions and Answers
Many FreeBSD users wish to install FreeBSD on PCs inhabited
by MS-DOS. Here are some commonly asked questions about
installing FreeBSD on such systems.
Help! I have no space! Do I need to delete
everything first?
If your machine is already running MS-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 directory on the FreeBSD CDROM or
on the various FreeBSD ftp sites, to be quite useful.
FIPS 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 defragment your MS-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 will need
for the kind of installation you want.
Can I use compressed MS-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
MS-DOS primary partition and use this for communications
between MS-DOS and FreeBSD.
Can I run MS-DOS binaries under FreeBSD?
Not yet! We would 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 nice application available in the
called pcemu,
that allows you to run many basic MS-DOS text-mode binaries
by entirely emulating an 8088 CPU.