Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 28 Apr 2000 00:44:50 -0700
From:      bill <bill@2ez.com>
To:        doc@FreeBSD.org
Subject:   handbook submissions
Message-ID:  <3.0.6.32.20000428004450.007f4370@pop.winterlink.net>

next in thread | raw e-mail | index | archive | help
hi,

we're newbies.  we really screwed-up...caught it just in time, too.
thought it might make for a good tidbit for the handbook.  perhaps it will
fit-in somewhere.

bill
-------
FreeBSD, disk drives and your BIOS

Before you install and configure FreeBSD on your system, there is an
important subject that you should be aware of if, especially if you have
multiple hard drives.  This is the subject of "BIOS drive numbering."

In a PC running DOS or any of the BIOS-dependent operating systems
(WINxxx), the BIOS is able to abstract the normal disk drive order, and the
operating system goes along with the change.  This allows the user to boot
from a disk drive other than the so-called "primary master."  This is
especially convenient for some users who have found that the simplest and
cheapest way to keep a system backup is to buy an identical second hard
drive, and perform routine copies of the first drive to the second drive
using Ghost or XCOPY /c/h/e/k/y/r.  Then, if the first drive fails, or is
attacked by a virus, or is scribbled upon by an operating system defect, he
can easily recover by instructing the BIOS to logically swap the drives.
It's like switching the cables on the drives, but without having to open
the case.

More expensive systems with SCSI controllers often include BIOS extensions
which allow the SCSI drives to be re-ordered in a similar fashion for up to
seven drives.

A user who is accustomed to taking advantage of these features may become
surprised when the results with FreeBSD are not as expected.  FreeBSD does
not use the BIOS, and does not know the "logical BIOS drive mapping."  This
can lead to very perplexing situations, especially when drives are
physically identical in geometry, and have also been made as data clones of
one another.  

When using FreeBSD, always restore the BIOS to natural drive numbering
before installing FreeBSD, and then leave it that way.  If you need to
switch drives around, then do so, but do it the hard way...open the case
and move the jumpers and cables.

An illustration from the files of Bill and Fred's Exceptional Adventures:

Bill breaks-down an older WIntel box to make another FreeBSD box for Fred.
Bill installs a single SCSI drive as SCSI unit zero, and installs FreeBSD
on it.  

Fred begins using the system, but after several days notices that the older
SCSI drive is reporting numerous soft errors, and reports this fact to Bill.  

After several more days, Bill decides it's time to address the situation,
so he grabs an identical SCSI drive from the disk drive "archive" in the
back room.  An initial surface scan indicates that this drive is
functioning well, so Bill installs this drive as SCSI unit four, and makes
an image copy from drive zero to drive four.  Now that the new drive is
installed and functioning nicely, Bill decides that it's a good idea to
start using it, so he uses features in the SCSI BIOS to re-order the disk
drives so that the system boots from SCSI unit four.  FreeBSD boots and
runs just fine.

Fred continues his work for several days, and soon Bill and Fred decide
that it's time for a new adventure -- time to upgrade to a newer version of
FreeBSD.  Bill removes SCSI unit zero because it was a bit flakey, and
replaces it with another identical disk drive from the "archive."  Bill
then installs the new version of FreeBSD onto the new SCSI unit zero using
Fred's magic internet FTP floppies.  The installation goes well.

Fred uses the new version of FreeBSD for a few days, and certifies that it
is good enough for use in the engineering department...it's time to copy
all of his work from the old version.  So Fred mounts SCSI unit four (the
latest copy of the older FreeBSD version).  Fred is dismayed to find that
none of his precious work is present on SCSI unit four.  

Where Did The Data GO????

When Bill made an image copy of the original SCSI unit zero onto SCSI unit
four, unit four became the "new clone,"  When Bill re-ordered the SCSI BIOS
so that he could boot from SCSI unit four, he was only fooling himself.
FreeBSD was still running on SCSI unit zero.  Making this kind of BIOS
change will cause some or all of the Boot and Loader code to be fetched
from the selected BIOS drive, but when the FreeBSD kernel drivers
take-over, the BIOS drive numbering will be ignored, and FreeBSD will
transition back to normal drive numbering.  In the illustration at hand,
the system continued to operate on the original SCSI unit zero, and all of
Fred's data was there, not on SCSI unit four.  The fact that the system
appeared to be running on SCSI unit four was simply an artifact of human
expectations.  

We are delighted to mention that no data bytes were killed or harmed in any
way by our discovery of this phenomenon.  The older SCSI unit zero was
retrieved from the bonepile, and all of Fred's work was returned to him,
(and now Bill knows that he can count as high as zero).

Although SCSI drives were used in this illustration, the concepts apply
equally to IDE drives.

(If God had wanted you to have a BIOS, you would have been born with one.)





To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-doc" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3.0.6.32.20000428004450.007f4370>