Add information about BIOS renumbering of disk drives, and why it might
be a bad idea from a FreeBSD perspective. Submitted by: bill@2ez.com
This commit is contained in:
parent
ceaadd8963
commit
e8e0d365eb
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=7119
4 changed files with 242 additions and 4 deletions
|
|
@ -1,7 +1,7 @@
|
|||
<!--
|
||||
The FreeBSD Documentation Project
|
||||
|
||||
$FreeBSD: doc/en_US.ISO_8859-1/books/handbook/disks/chapter.sgml,v 1.16 2000/03/25 20:05:40 nbm Exp $
|
||||
$FreeBSD: doc/en_US.ISO_8859-1/books/handbook/disks/chapter.sgml,v 1.17 2000/04/03 02:15:38 chris Exp $
|
||||
-->
|
||||
|
||||
<chapter id="disks">
|
||||
|
|
@ -14,6 +14,105 @@
|
|||
memory, or networked, on FreeBSD.</para>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="disks-bios-numbering">
|
||||
<title>BIOS Drive Numbering</title>
|
||||
|
||||
<para>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.</para>
|
||||
|
||||
<para>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 <quote>primary
|
||||
master</quote>. 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. 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.</para>
|
||||
|
||||
<para>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.</para>
|
||||
|
||||
<para>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 <quote>logical BIOS
|
||||
drive mapping</quote>. 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.</para>
|
||||
|
||||
<para>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, and
|
||||
open the case and move the jumpers and cables.</para>
|
||||
|
||||
<sidebar>
|
||||
<title>An illustration from the files of Bill and Fred's Exceptional
|
||||
Adventures:</title>
|
||||
|
||||
<para>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.</para>
|
||||
|
||||
<para>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.</para>
|
||||
|
||||
<para>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.</para>
|
||||
|
||||
<para>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.</para>
|
||||
|
||||
<para>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.</para>
|
||||
|
||||
<para>Where did the data go?</para>
|
||||
|
||||
<para>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.</para>
|
||||
|
||||
<para>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).</para>
|
||||
|
||||
<para>Although SCSI drives were used in this illustration, the concepts
|
||||
apply equally to IDE drives.</para>
|
||||
</sidebar>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="disks-naming">
|
||||
<title>Disk Naming</title>
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<!--
|
||||
The FreeBSD Documentation Project
|
||||
|
||||
$FreeBSD: doc/en_US.ISO_8859-1/books/handbook/install/chapter.sgml,v 1.36 2000/03/10 22:32:34 jim Exp $
|
||||
$FreeBSD: doc/en_US.ISO_8859-1/books/handbook/install/chapter.sgml,v 1.37 2000/04/05 12:25:23 nik Exp $
|
||||
-->
|
||||
|
||||
<chapter id="install">
|
||||
|
|
@ -486,6 +486,15 @@ ftp:*:99:99::0:0:FTP:/cdrom:/nonexistent</programlisting>
|
|||
installation requests them.</para>
|
||||
</sect4>
|
||||
</sect3>
|
||||
|
||||
<sect3>
|
||||
<title>Check your BIOS drive numbering</title>
|
||||
|
||||
<para>If you have used features in your BIOS to renumber your disk
|
||||
drives without recabling them then you should read <xref
|
||||
linkend="disks-bios-numbering"> first to ensure you do not
|
||||
confused.</para>
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="install-freebsd">
|
||||
|
|
@ -1615,3 +1624,14 @@ ftp:*:99:99::0:0:FTP:/cdrom:/nonexistent</programlisting>
|
|||
</sect2>
|
||||
</sect1>
|
||||
</chapter>
|
||||
|
||||
<!--
|
||||
Local Variables:
|
||||
mode: sgml
|
||||
sgml-declaration: "../chapter.decl"
|
||||
sgml-indent-data: t
|
||||
sgml-omittag: nil
|
||||
sgml-always-quote-attributes: t
|
||||
sgml-parent-document: ("../book.sgml" "part" "chapter")
|
||||
End:
|
||||
-->
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue