The FreeBSD Project

This article gives some brief instructions on installing FreeBSD/amd64 5.5-RELEASE,
with particular emphasis given to obtaining a FreeBSD distribution. Some notes on
troubleshooting and frequently-asked questions are also given.

This section documents the process of installing a new distribution of FreeBSD. These
instructions pay particular emphasis to the process of obtaining the FreeBSD 5.5-RELEASE
distribution and to beginning the installation procedure. The ``Installing FreeBSD'' chapter of the FreeBSD
Handbook provides more in-depth information about the installation program itself,
including a guided walkthrough with screenshots.

If you are upgrading from a previous release of FreeBSD, please see Section 3 for instructions on upgrading.

Probably the most important pre-installation step that can be taken is that of reading
the various instruction documents provided with FreeBSD. A roadmap of documents
pertaining to this release of FreeBSD can be found in README.TXT, which can usually be found in the same location as this
file; most of these documents, such as the release notes and the hardware compatibility
list, are also accessible in the Documentation menu of the installer.

This collection of documents may seem daunting, but the time spent reading them will
likely be saved many times over. Being familiar with what resources are available can
also be helpful in the event of problems during installation.

The best laid plans sometimes go awry, so if you run into trouble take a look at Section 4, which contains valuable troubleshooting information. You
should also read an updated copy of ERRATA.TXT before
installing, since this will alert you to any problems which have reported in the interim
for your particular release.

Important: While FreeBSD does its best to safeguard against accidental loss of
data, it's still more than possible to wipe
out your entire disk with this installation if you make a mistake. Please do
not proceed to the final FreeBSD installation menu unless you've adequately backed up any
important data first.

FreeBSD for the AMD64 requires an Athlon64, Athlon64-FX, Opteron or better processor
to run.

If you have an machine based on an nVidia nForce3 Pro-150, you MUST use the BIOS setup
to disable the IO APIC. If you do not have an option to do this, you will likely have to
disable ACPI instead. There are bugs in the Pro-150 chipset that we have not found a
workaround for yet.

If you are not familiar with configuring hardware for FreeBSD, you should be sure to
read the HARDWARE.TXT file; it contains important information
on what hardware is supported by FreeBSD.

The easiest type of installation is from CDROM. If you have a supported CDROM drive
and a FreeBSD installation CDROM, there are 2 ways of starting the installation from
it:

If your system supports the ``CDBOOT'' standard for bootable CDROM media and you have
booting from CD enabled, simply put the FreeBSD installation CD in your CDROM drive and
boot the system to begin installation.

Build a set of FreeBSD boot floppies from the floppies/
directory in every FreeBSD distribution. Read Section 1.3 for
more information on creating the bootable floppies under different operating systems.
Then you simply boot from the first floppy and you should soon be in the FreeBSD
installation.

Once you've gotten yourself to the initial installation screen somehow, you should be
able to follow the various menu prompts and go from there. If you've never used the
FreeBSD installation before, you are also encouraged to read some of the documentation in
the Documentation submenu as well as the general ``Usage'' instructions on the first
menu.

Note: If you get stuck at a screen, press the F1 key for
online documentation relevant to that specific section.

If you've never installed FreeBSD before, or even if you have, the ``Standard''
installation mode is the most recommended since it makes sure that you'll visit all the
various important checklist items along the way. If you're much more comfortable with the
FreeBSD installation process and know exactly what you want to do, use the ``Express'' or
``Custom'' installation options. If you're upgrading an existing system, use the
``Upgrade'' option.

The FreeBSD installer supports the direct use of floppy, DOS, tape, CDROM, FTP, NFS
and UFS partitions as installation media; further tips on installing from each type of
media are listed below.

If you simply wish to install from a local CDROM drive then see Section 1.4. If you don't have a CDROM drive on your
system and wish to use a FreeBSD distribution CD in the CDROM drive of another system to
which you have network connectivity, there are also several ways of going about it:

If you would be able to FTP install FreeBSD directly from the CDROM drive in some
FreeBSD machine, it's quite easy: You ensure an FTP server is running and then simply add
the following line to the password file (using the vipw(8)
command):

ftp:*:99:99::0:0:FTP:/cdrom:/sbin/nologin

On the machine on which you are running the install, go to the Options menu and set
Release Name to any. You may then choose a Media type of FTP and type in ftp://machine after picking ``URL'' in the ftp sites
menu.

Warning: This may allow anyone on the local network (or Internet) to make
``anonymous FTP'' connections to this machine, which may not be desirable.

If you would rather use NFS to export the CDROM directly to the machine(s) you'll be
installing from, you need to first add an entry to the /etc/exports file (on the machine with the CDROM drive). The
example below allows the machine ziggy.foo.com to mount the CDROM
directly via NFS during installation:

/cdrom -ro ziggy.foo.com

The machine with the CDROM must also be configured as an NFS server, of course, and if
you're not sure how to do that then an NFS installation is probably not the best choice
for you unless you're willing to read up on rc.conf(5) and
configure things appropriately. Assuming that this part goes smoothly, you should be able
to enter: cdrom-host:/cdrom
as the path for an NFS installation when the target machine is installed, e.g. wiggy:/cdrom.

Second, peruse Section 2 and pay special attention to the
``Distribution Format'' section since it describes which files you're going to need to
put onto floppy and which you can safely skip.

Next you will need, at minimum, as many 1.44MB 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.

Important: Frequently, floppy disks come ``factory preformatted''. While
convenient, many problems reported by users in the past have resulted from the use of
improperly formatted media. Re-format them yourself, just to make sure.

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(8) and
newfs(8)
commands to put a UFS filesystem on a floppy, as the following sequence of commands
illustrates:

After you've formatted the floppies for DOS or UFS, you'll need to copy the files onto
them. The distribution files are sized so that a floppy disk will hold a single file.
Each distribution should go into its own subdirectory on the floppy, e.g.: a:\bin\bin.inf, a:\bin\bin.aa, a:\bin\bin.ab, ...

Important: The bin.inf file also needs to go on the
first floppy of the bin set since it is read by the
installation program in order to figure out how many additional pieces to look for when
fetching and concatenating the distribution. When putting distributions onto floppies,
the distname.inf file must occupy the first floppy of each distribution set.

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

To prepare for installation from an MS-DOS partition you should simply copy the files
from the distribution into a directory called FREEBSD on the
Primary DOS partition (C:). 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:\FREEBSDC:\>XCOPY /S E:\BASE C:\FREEBSD\BASE

Assuming that E: was where your CD was mounted.

For as many distributions 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.

Once you've copied the directories, you can simply launch the installation from
floppies as normal and select ``DOS'' as your media type when the time comes.

When installing from tape, the installation program expects the files to be simply
tar'ed onto it, so after fetching all of the files for the distributions you're
interested in, simply use tar(1) to get
them onto the tape with a command something like this:

#cd /where/you/have/your/dists#tar cvf /dev/sa0 dist1 .. dist2

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.

Note: When going to do the installation, the tape must be in the drive before booting from the boot floppies.
The installation ``probe'' may otherwise fail to find it.

Now create a boot floppy as described in Section 1.3 and
proceed with the installation.

SLIP support is rather primitive, and is limited primarily to hard-wired links, such
as a serial cable running between two computers. The link must be hard-wired because the
SLIP installation doesn't currently offer a dialing capability. If you need to dial out
with a modem or otherwise dialog with the link before connecting to it, then the PPP
utility should be used instead.

If you're using PPP, make sure that you have your Internet Service Provider's IP
address and DNS information handy as you'll need to know it fairly early in the
installation process. You may also need to know your own IP address, though PPP supports
dynamic address negotiation and may be able to pick up this information directly from
your ISP if they support it.

You will also need to know how to use the various ``AT commands'' for dialing out with
your particular brand of modem as the PPP dialer provides only a very simple terminal
emulator.

If a hard-wired connection to another FreeBSD or Linux 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. It's not typically necessary to
use ``real'' IP addresses when using a point-to-point parallel cable in this way and you
can generally just use RFC 1918 style addresses for the ends of the link (e.g. 10.0.0.1, 10.0.0.2, etc).

Important: If you use a Linux machine rather than a FreeBSD machine as your
PLIP peer, you will also have to specify link0 in the TCP/IP
setup screen's ``extra options for ifconfig'' field in order to be compatible with
Linux's slightly different PLIP protocol.

FreeBSD supports most common Ethernet cards; a table of supported cards is provided as
part of the FreeBSD Hardware Notes (see HARDWARE.TXT in the
Documentation menu on the boot floppy or the top level directory of the CDROM). 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
during installation.

You will also need to know your IP address on the network, the netmask value for your subnet and the name of your machine. Your
system administrator can tell you which values are appropriate to 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 want to install by FTP via an
HTTP proxy (see below), you will also need the proxy's address.

If you do not know the answers to these questions then you should really probably talk
to your system administrator first
before trying this type of installation. Using a randomly chosen IP address or netmask on
a live network is almost guaranteed not to work, and will probably result in a lecture
from said system administrator.

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

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 (this is generally the default
for Sun and Linux workstations), you may 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 distribution directory lives on wiggy:/usr/archive/stuff/FreeBSD, then wiggy 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 properly enabled.

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

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 ``URL'' choice in that menu. A URL can contain a hostname or an
IP address, so something like the following would work in the absence of a name
server:

ftp://216.66.64.162/pub/FreeBSD/releases/amd64/4.2-RELEASE

There are three FTP installation modes you can use:

FTP: This method uses the standard ``Active'' mode for transfers, in which the server
initiates a connection to the client. 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.

FTP Passive: This sets the FTP "Passive" mode which prevents the server from opening
connections to the client. This option is best for users to pass through firewalls that
do not allow incoming connections on random port addresses.

FTP via an HTTP proxy: This option instructs FreeBSD to use HTTP 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 an HTTP proxy. You must specify the hostname of the proxy in addition to the FTP
server.

In the rare case that you have an FTP proxy that does not go through HTTP, you can
specify the URL as something like:

If you'd like to install FreeBSD on a machine using just a serial port (e.g. you don't
have or wish to use a VGA card), please follow these steps:

Connect some sort of ANSI (vt100) compatible terminal or terminal emulation program to
the COM1 port of the PC you are installing FreeBSD onto.

Unplug the keyboard (yes, that's correct!) and then try to boot from floppy or the
installation CDROM, depending on the type of installation media you have, with the
keyboard unplugged.

If you don't get any output on your serial console, plug the keyboard in again. If you
are booting from the CDROM, proceed to step 5 as soon as you hear
the beep.

If booting from floppies, when access to the disk stops, insert the first of the kernX.flp disks and press Enter. When access to this disk finishes, insert the next kernX.flp disk and press Enter, and repeat until all kernX.flp disks have been inserted. When disk activity
finishes, reinsert the boot.flp floppy disk and press Enter.

Once a beep is heard, hit the number 6, then enter

boot -h

and you should now definitely be seeing everything on the serial port. If that still
doesn't work, check your serial cabling as well as the settings on your terminal
emulation program or actual terminal device. It should be set for 9600 baud, 8 bits, no
parity.

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 partition. Also note that FIPS will create
the second partition as a ``clone'' of the first, so you'll actually see that you now
have two DOS Primary partitions where you formerly had one. Don't be alarmed! You can
simply delete the extra DOS Primary partition (making sure it's the right one by
examining its size).

FIPS does NOT currently work with NTFS style partitions. To
split up such a partition, you will need a commercial product such as Partition Magic. Sorry, but this is just the breaks if you've got
a Windows partition hogging your whole disk and you don't want to reinstall from
scratch.

FIPS does not work on extended DOS partitions. Windows
95/98/ME FAT32 primary partitions are supported.

1.6.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 extended partition and use
this for communications between DOS and FreeBSD if such is your desire.

1.6.3. Can I mount my DOS extended
partitions?

Yes. DOS extended partitions are mapped in at the end of the other ``slices''
in FreeBSD, e.g. your D: drive might be /dev/da0s5, your E: drive /dev/da0s6, and so on. This example assumes, of course, that your
extended partition is on SCSI drive 0. For IDE drives, substitute ad for da appropriately. You otherwise
mount extended partitions exactly like you would mount any other DOS drive, e.g.:

#mount -t msdos /dev/da0s5 /dos_d

1.6.4. Can I run DOS binaries under
FreeBSD?

Ongoing work with BSDI's doscmd(1)
utility will suffice in many cases, though it still has some rough edges. The emulators/doscmd port/package can be found in the FreeBSD Ports
Collection. If you're interested in working on this, please send mail to the FreeBSD-emulation mailing list and indicate that you're interested in
joining this ongoing effort!

The emulators/pcemu port/package in the FreeBSD Ports Collection
which emulates an 8088 and enough BIOS services to run DOS text mode applications. It
requires the X Window System (XFree86) to operate.

1.6.5. Can I run Microsoft® Windows®
applications under FreeBSD?

There are several ports/packages in the FreeBSD Ports Collection which can
enable the use of many Windows applications. The emulators/wine port/package provides a compatibility layer on
top of FreeBSD which allow many Windows applications to be
run within X Windows (XFree86).

1.6.6. Can I run other Operating Systems
under FreeBSD?

Again, there are several ports/packages in the FreeBSD Ports Collection which
simulate "virtual machines" and allow other operating systems to run on top of FreeBSD.
The emulators/bochs port/package allows MicrosoftWindows, Linux and
even other copies of FreeBSD to be run within a window on the FreeBSD desktop. The emulators/vmware2 and emulators/vmware3 ports/packages allow the commercial VMware
virtual machine software to be run on FreeBSD.

These same files are contained in the first CDROM of a multi-disk set, but they are
laid out slightly differently on the disk. On most architectures, the installation CDROM
also contains a ``live filesystem'' in addition to the distribution files. The live
filesystem is useful when repairing or troubleshooting an existing FreeBSD installation
(see Section 4 for how to use this).

The floppies directory will be of particular interest to
users who are unable to boot from the CDROM media (but are able to read the CDROM by
other means). It is easy to generate a set of 1.44MB boot floppies from the floppies directory (see Section 1.3 for
instructions on how to do this) and use these to start an installation from CDROM, FTP,
or NFS. The rest of the data needed during the installation will be obtained
automatically based on your selections. If you've never installed FreeBSD before, you
also want to read the entirety of this document (the installation instructions) file.

If you're trying to do some other type of installation or are merely curious about how
a distribution is organized, what follows is a more thorough description of some of these
items in more detail:

The *.TXT and *.HTM files contain
documentation (for example, this document is contained in both INSTALL.TXT and INSTALL.HTM) and should
be read before starting an installation. The *.TXT files are
plain text, while the *.HTM files are HTML files that can be
read by almost any Web browser. Some distributions may contain documentation in other
formats as well, such as PDF or PostScript.

docbook.css is a Cascading Style Sheet (CSS) file used by
some Web browsers for formatting the HTML documentation.

The compat1x, compat20, compat21, compat22, compat3x, and compat4x directories
contain distributions for compatibility with older releases and are distributed as single
gzip'd tar files - they can be installed during release time or later by running their
install.sh scripts.

The floppies/ subdirectory contains the floppy installation
images; further information on using them can be found in Section
1.3.

The packages and ports directories
contain the FreeBSD Packages and Ports Collections. Packages may be installed from the
packages directory by running the command:

#/stand/sysinstall configPackages

Packages can also be installed by feeding individual filenames in packages/ to the pkg_add(1)
command.

The Ports Collection may be installed like any other distribution and requires about
190MB unpacked. More information on the ports collection may be obtained from http://www.FreeBSD.org/ports/ or
locally from /usr/share/doc/handbook if you've installed the
doc distribution.

Last of all, the tools directory contains various DOS tools
for discovering disk geometries, installing boot managers and the like. It is purely
optional and provided only for user convenience.

A typical distribution directory (for example, the info
distribution) looks like this internally:

The CHECKSUM.MD5 file contains MD5 signatures for each file,
should data corruption be suspected, and is purely for reference. It is not used by the
actual installation and does not need to be copied with the rest of the distribution
files. The info.a* files are split, gzip'd tar files, the
contents of which can be viewed by doing:

#cat info.a* | tar tvzf -

During installation, they are automatically concatenated and extracted by the
installation procedure.

The info.inf file is also necessary since it is read by the
installation program in order to figure out how many pieces to look for when fetching and
concatenating the distribution. When putting distributions onto floppies, the .inf file must occupy the first floppy of each distribution set!

The info.mtree file is another non-essential file which is
provided for user reference. It contains the MD5 signatures of the unpacked distribution files and can be
later used with the mtree(8) program
to verify the installation permissions and checksums against any possible modifications
to the file. When used with the base distribution, this can be
an excellent way of detecting trojan horse attacks on your system.

Finally, the install.sh file is for use by those who want to
install the distribution after installation time. To install the info distribution from
CDROM after a system was installed, for example, you'd do:

These instructions describe a procedure for doing a binary upgrade from an older
version of FreeBSD.

Warning: While the FreeBSD upgrade procedure does its best to safeguard against
accidental loss of data, it is still more than possible to wipe out your entire disk with this installation! Please do
not accept the final confirmation request unless you have adequately backed up any
important data files.

Important: These notes assume that you are using the version of sysinstall(8)
supplied with the version of FreeBSD to which you intend to upgrade. Using a mismatched
version of sysinstall(8) is
almost guaranteed to cause problems and has been known to leave systems in an unusable
state. The most commonly made mistake in this regard is the use of an old copy of sysinstall(8)
from an existing installation to upgrade to a newer version of FreeBSD. This is not recommended.

Warning: Binary upgrades to FreeBSD 5.5-RELEASE from FreeBSD 4-STABLE are not
supported at this time. There are some files present in a FreeBSD 4-STABLE whose presence
can be disruptive, but are not removed by a binary upgrade. One notable example is that
an old /usr/include/g++ directory will cause C++ programs to
compile incorrectly (or not at all).

These upgrade instructions are provided for the use of users upgrading from relatively
recent FreeBSD 5.5-STABLE snapshots.

The upgrade procedure replaces distributions selected by the user with those
corresponding to the new FreeBSD release. It preserves standard system configuration
data, as well as user data, installed packages and other software.

Administrators contemplating an upgrade are encouraged to study this section in its
entirety before commencing an upgrade. Failure to do so may result in a failed upgrade or
loss of data.

The versions of these files which correspond to the new version are moved to /etc/upgrade/. The system administrator may peruse these new
versions and merge components as desired. Note that many of these files are
interdependent, and the best merge procedure is to copy all site-specific data from the
current files into the new.

During the upgrade procedure, the administrator is prompted for a location into which
all files from /etc/ are saved. In the event that local
modifications have been made to other files, they may be subsequently retrieved from this
location.

User data and system configuration should be backed up before upgrading. While the
upgrade procedure does its best to prevent accidental mistakes, it is possible to
partially or completely destroy data and configuration information.

The disklabel editor is entered with the nominated disk's filesystem devices listed.
Prior to commencing the upgrade, the administrator should make a note of the device names
and corresponding mountpoints. These mountpoints should be entered here. Do not set the ``newfs flag'' for any
filesystems, as this will cause data loss.

When selecting distributions, there are no constraints on which must be selected. As a
general rule, the base distribution should be selected for an
update, and the man distribution if manpages are already
installed. Other distributions may be selected beyond those originally installed if the
administrator wishes to add additional functionality.

Once the installation procedure has completed, the administrator is prompted to
examine the new configuration files. At this point, checks should be made to ensure that
the system configuration is valid. In particular, the /etc/rc.conf and /etc/fstab files should
be checked.

Those interested in an upgrade method that allows more flexibility and sophistication
should take a look at The Cutting Edge in the FreeBSD Handbook. This procedure involves
rebuilding all of FreeBSD from source code. It requires reliable network connectivity,
extra disk space, and time, but has advantages for networks and other more complex
installations. This is roughly the same procedure as is used for track the -STABLE or
-CURRENT development branches.

/usr/src/UPDATING contains important information on updating
a FreeBSD system from source code. It lists various issues resulting from changes in
FreeBSD that may affect an upgrade.

FreeBSD features a ``fixit'' option in the top menu of the sysinstall(8)
installation program. It provides a shell with common programs from the FreeBSD base
system; this environment is useful for repairing or troubleshooting an existing FreeBSD
installation. To use fixit mode, you will also need either the fixit.flp floppy, generated in the same fashion as the boot
floppies, or the ``live filesystem'' CDROM. In multi-disk FreeBSD distributions, the live
filesystem image is typically located on the installation disk. Note that some UNIX
system administration experience is required to use the fixit option.

Generally, there are two ways of invoking fixit mode. Users who can boot from the
FreeBSD installation CDROM, should do so and then choose the ``fixit'' item from the main
sysinstall(8)
menu. Then select the ``CDROM/DVD'' option from the fixit menu.

Users who cannot boot from CDROM, but can boot from floppy disk, require a few more
steps. In addition to the boot.flp and kernX.flp disks required for
installation, create the fixit.flp floppy disk, in the same way
as the other floppy disks. Follow the instructions for booting the installation program
from floppy disk until reaching the main sysinstall(8)
menu. At that point, choose the ``fixit'' item from the main sysinstall(8)
menu. Then select the ``Floppy'' option from the fixit menu, and insert the fixit.flp floppy disk when prompted to do so.

The CDROM and floppy fixit environments are similar, but not identical. Both offer a
shell with a variety of commands available for checking, repairing and examining
filesystems and their contents. The CDROM version of fixit provides all of the commands
and programs available in the FreeBSD base system, through the live filesystem. By
contrast, the floppy fixit environment can only offer a subset of commands due to space
constraints.

In the floppy version of fixit, some standalone utilities can be found in /stand or /mnt2/stand. In the CDROM
version of fixit, these same programs can be found in /stand or
/mnt2/rescue (as well as the rest of the programs from the live
filesystem, which can be found under /mnt).

4.2.1. My system hangs while probing
hardware during boot, or it behaves strangely during install, or the floppy drive isn't
probed.

FreeBSD 5.0 and above makes extensive use of the system ACPI service on the
i386, amd64 and ia64 platforms to aid in system configuration if it's detected during
boot. Unfortunately, some bugs still exist in both the ACPI driver and within system
motherboards and BIOS. The use of ACPI can be disabled by setting the
``hint.acpi.0.disabled'' hint in the third stage boot loader:

set hint.acpi.0.disabled="1"

This is reset each time the system is booted, so it is necessary to add hint.acpi.0.disabled="1" to the file /boot/loader.conf. More information about the boot loader can be
found in the FreeBSD Handbook.

4.2.2. My system uses the nVidia nForce3
Pro-150 chipset and I get hangs at the end of boot or suddenly starts losing
interrupts.

There are problems with the apic on this chipset and/or the bios on every
machine that we had seen at the time of release. While disabling ACPI as above will work,
a less drastic option may be to set the ``hint.apic.0.disabled'' hint instead. If you
have the option in the bios, try disabling the APIC support. Unfortunately some machines
lack this option.

4.2.4. I go to boot from the hard disk for
the first time after installing FreeBSD, the kernel loads and probes my hardware, but
stops with messages like:

changing root device to ad1s1a panic: cannot mount root

What is wrong? What can I do?

What is this bios_drive:interface(unit,partition)kernel_name
thing that is displayed with the boot help?

There is a longstanding problem in the case where the boot disk is not the
first disk in the system. The BIOS uses a different numbering scheme to FreeBSD, and
working out which numbers correspond to which is difficult to get right.

In the case where the boot disk is not the first disk in the system, FreeBSD can need
some help finding it. There are two common situations here, and in both of these cases,
you need to tell FreeBSD where the root filesystem is. You do this by specifying the BIOS
disk number, the disk type and the FreeBSD disk number for that type.

The first situation is where you have two IDE disks, each configured as the master on
their respective IDE busses, and wish to boot FreeBSD from the second disk. The BIOS sees
these as disk 0 and disk 1, while FreeBSD sees them as ad0
and ad2.

FreeBSD is on BIOS disk 1, of type ad and the FreeBSD disk
number is 2, so you would say:

1:ad(2,a)kernel

Note that if you have a slave on the primary bus, the above is not necessary (and is
effectively wrong).

The second situation involves booting from a SCSI disk when you have one or more IDE
disks in the system. In this case, the FreeBSD disk number is lower than the BIOS disk
number. If you have two IDE disks as well as the SCSI disk, the SCSI disk is BIOS disk 2,
type da and FreeBSD disk number 0, so you would say:

2:da(0,a)kernel

To tell FreeBSD that you want to boot from BIOS disk 2, which is the first SCSI disk
in the system. If you only had one IDE disk, you would use '1:' instead.

Once you have determined the correct values to use, you can put the command exactly as
you would have typed it in the /boot.config file using a
standard text editor. Unless instructed otherwise, FreeBSD will use the contents of this
file as the default response to the boot: prompt.

4.2.5. I go to boot from the hard disk for
the first time after installing FreeBSD, but the Boot Manager prompt just prints F? at the boot menu each time but the boot won't go any further.

The hard disk geometry was set incorrectly in the Partition editor when you
installed FreeBSD. Go back into the partition editor and specify the actual geometry of
your hard disk. You must reinstall FreeBSD again from the beginning with the correct
geometry.

If you are failing entirely in figuring out the correct geometry for your machine,
here's a tip: Install a small DOS partition at the beginning of the disk and install
FreeBSD after that. The install program will see the DOS partition and try to infer the
correct geometry from it, which usually works.

The following tip is no longer recommended, but is left here for reference:

If you are setting up a truly dedicated FreeBSD server or workstation where you don't
care for (future) compatibility with DOS, Linux or another operating system, you've also
got the option to use the entire disk (`A' in the partition editor), selecting the
non-standard option where FreeBSD occupies the entire disk from the very first to the
very last sector. This will leave all geometry considerations aside, but is somewhat
limiting unless you're never going to run anything other than FreeBSD on a disk.

Your card is probably on a different IRQ from what is specified in the kernel
configuration. The ed driver does not use the `soft' configuration by default (values
entered using EZSETUP in DOS), but it will use the software configuration if you specify
? in the IRQ field of your kernel config file.

Either move the jumper on the card to a hard configuration setting (altering the
kernel settings if necessary), or specify the IRQ as -1 in
UserConfig or ? in your kernel config file. This will tell the
kernel to use the soft configuration.

Another possibility is that your card is at IRQ 9, which is shared by IRQ 2 and
frequently a cause of problems (especially when you have a VGA card using IRQ 2!). You
should not use IRQ 2 or 9 if at all possible.

4.2.12. I have this CMD640 IDE controller
that is said to be broken.

FreeBSD does not support this controller.

4.2.15. I have an IBM EtherJet PCI card,
it is detected by the fxp(4) driver correctly, but the lights on the card
don't come on and it doesn't connect to the network.

We don't understand why this happens. Neither do IBM (we asked them). The card
is a standard Intel EtherExpress Pro/100 with an IBM label on it, and these cards
normally work just fine. You may see these symptoms only in some IBM Netfinity servers.
The only solution is to install a different Ethernet adapter.

4.2.17. When I install onto a drive
managed by a Mylex PCI RAID controller, the system fails to boot (eg. with a read error message).

There is a bug in the Mylex driver which results in it ignoring the ``8GB''
geometry mode setting in the BIOS. Use the 2GB mode instead.