diff options
author | John Fieber <jfieber@FreeBSD.org> | 1997-03-23 16:27:47 +0000 |
---|---|---|
committer | John Fieber <jfieber@FreeBSD.org> | 1997-03-23 16:27:47 +0000 |
commit | 47a93628dd1bd7e70940ee7f93af97008f4178a4 (patch) | |
tree | 77d52c92021d423fed62c80bdf9704fc08169089 /en_US.ISO_8859-1 | |
parent | 33d1a3cbfd1ffa20c377f590c06c9cd7d1af3fc2 (diff) | |
download | doc-47a93628dd1bd7e70940ee7f93af97008f4178a4.tar.gz doc-47a93628dd1bd7e70940ee7f93af97008f4178a4.zip |
Another tutorial converted to Docbook.
Notes
Notes:
svn path=/head/; revision=1342
Diffstat (limited to 'en_US.ISO_8859-1')
-rw-r--r-- | en_US.ISO_8859-1/articles/multi-os/Makefile | 6 | ||||
-rw-r--r-- | en_US.ISO_8859-1/articles/multi-os/article.sgml | 680 | ||||
-rw-r--r-- | en_US.ISO_8859-1/tutorials/Makefile | 4 | ||||
-rw-r--r-- | en_US.ISO_8859-1/tutorials/index.sgml | 6 |
4 files changed, 687 insertions, 9 deletions
diff --git a/en_US.ISO_8859-1/articles/multi-os/Makefile b/en_US.ISO_8859-1/articles/multi-os/Makefile index 0e4f4527c3..53e73e376c 100644 --- a/en_US.ISO_8859-1/articles/multi-os/Makefile +++ b/en_US.ISO_8859-1/articles/multi-os/Makefile @@ -1,5 +1,5 @@ -DOC= multios -SRCS= multios.sgml +DOCS= multios.docb +INDEXLINK= multios.html -.include <bsd.sgml.mk> +.include "../../web.mk" diff --git a/en_US.ISO_8859-1/articles/multi-os/article.sgml b/en_US.ISO_8859-1/articles/multi-os/article.sgml new file mode 100644 index 0000000000..e7b1d68d68 --- /dev/null +++ b/en_US.ISO_8859-1/articles/multi-os/article.sgml @@ -0,0 +1,680 @@ +<!-- $Id: article.sgml,v 1.1 1997-03-23 16:27:47 jfieber Exp $ --> +<!DOCTYPE BOOK PUBLIC "-//Davenport//DTD DocBook V3.0//EN"> +<book> + +<bookinfo> +<bookbiblio> +<title>Installing and Using FreeBSD With Other Operating Systems</title> + +<authorgroup> +<author> +<firstname>Jay</firstname> +<surname>Richmond</surname> +<affiliation> +<address> +<email>jayrich@in.net</email> +</address> +</affiliation> +</author> +</authorgroup> + +<pubdate>6 August 1996</pubdate> + +<abstract><para>This document discusses how to make FreeBSD coexist +nicely with other popular operating systems such as Linux, MS-DOS, +OS/2, and Windows 95. Special thanks to: Annelise Anderson +<email>andrsn@stanford.edu</email>, Randall Hopper +<email>rhh@ct.picker.com</email>, and Jordan K. Hubbard +<email>jkh@time.cdrom.com</email></para></abstract> + +</bookbiblio> +</bookinfo> + +<chapter> +<title>Overview</title> + +<para>Most people can't fit these operating systems together +comfortably without having a larger hard disk, so special +information on large EIDE drives is included. Because there are so +many combinations of possible operating systems and hard disk +configurations, the <xref linkend="ch5"> section may be of the most use +to you. It contains descriptions of specific working computer setups +that use multiple operating systems.</para> + +<para>This document assumes that you have already made room on your +hard disk for an additional operating system. Any time you +repartition your hard drive, you run the risk of destroying the data +on the original partitions. However, if your hard drive is completely +occupied by DOS, you might find the FIPS utility (included on the +FreeBSD CD-ROM in the <filename>\TOOLS</filename> directory or via +<ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/tools">ftp</ulink>) +useful. It lets you repartition your hard disk without destroying the +data already on it. There is also a commercial program available +called Partition Magic, which lets you size and delete partitions +without consequence.</para> + +</chapter> + +<chapter id="ch2"> +<title>Overview of Boot Managers</title> + +<para>These are just brief descriptions of some of the different boot +managers you may encounter. Depending on your computer setup, you may +find it useful to use more than one of them on the same +system.</para> + +<variablelist> + +<varlistentry> +<term>Boot Easy</term> + +<listitem> +<para>This is the default boot manager used with FreeBSD. It has the +ability to boot most anything, including BSD, OS/2 (HPFS), Windows 95 +(FAT and FAT32), and Linux. Partitions are selected with the +function keys.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term>OS/2 Boot Manager</term> + +<listitem> +<para>This will boot FAT, HPFS, FFS (FreeBSD), and EXT2 +(Linux). It will also boot FAT32 partitions. Partitions are +selected using arrow keys. The OS/2 Boot Manager is the only one to +use its own separate partition, unlike the others which use the +master boot record (MBR). Therefore, it must be installed below the +1024th cylinder to avoid booting problems. It can boot Linux using +LILO when it is part of the boot sector, not the MBR. Go to <ulink +URL="http://www.ssc.com/linux/howto.html">Linux HOWTOs</ulink> +on the World Wide Web for more information on booting Linux with +OS/2's boot manager.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term>OS-BS</term> + +<listitem> <para>This is an alternative to Boot Easy. It gives you +more control over the booting process, with the ability to set the +default partition to boot and the booting timeout. The beta version +of this programs allows you to boot by selecting the OS with your +arrow keys. It is included on the FreeBSD CD in the +<filename>\TOOLS</filename> directory, and via <ulink +URL="ftp://ftp.freebsd.org/pub/FreeBSD/tools">ftp</ulink>.</para> +</listitem> </varlistentry> + +<varlistentry> +<term>LILO, or LInux LOader</term> + +<listitem> +<para>This is a limited boot manager. Will boot FreeBSD, though some +customization work is required in the LILO configuration file.</para> +</listitem> +</varlistentry> + +</variablelist> + +<note id="fat32"><title>About FAT32</title><para>FAT32 is the replacement to +the FAT filesystem included in Microsoft's OEM SR2 Beta release, +which is expected to utilitized on computers pre-loaded with Windows +95 towards the end of 1996. It converts the normal FAT file system +and allows you to use smaller cluster sizes for larger hard drives. +FAT32 also modifies the traditional FAT boot sector and allocation +table, making it incompatible with some boot managers.</para></note> + +</chapter> + +<chapter id="ch3"> +<title>A Typical Installation</title> + +<para>Let's say I have two large EIDE hard drives, and I want to +install FreeBSD, Linux, and Windows 95 on them.</para> + +<para>Here's how I might do it using these hard disks: +<itemizedlist> + +<listitem> +<para><filename>/dev/wd0</> (first physical hard disk)</para> +</listitem> + +<listitem> +<para><filename>/dev/wd1</> (second hard disk)</para> +</listitem> + +</itemizedlist> +</para> + +<para>Both disks have 1416 cylinders.</para> + +<procedure> + +<step><para>I boot from a MS-DOS or Windows 95 boot disk that +contains the <filename>FDISK.EXE</> utility and make a small 50 meg +primary partition (35-40 for Windows 95, plus a little breathing +room) on the first disk. Also create a larger partition on the +second hard disk for my Windows applications and data.</para></step> + +<step><para>I reboot and install Windows 95 (easier said than done) +on the <filename>C:</> partition.</para> </step> + +<step><para>The next thing I do is install Linux. I'm not sure about +all the distributions of Linux, but slackware includes LILO (see +<xref linkend="ch2">). When I am partitioning out my hard disk with +Linux <command>fdisk</command>, I would put all of Linux on the first +drive (maybe 300 megs for a nice root partition and some swap +space).</para></step> + +<step><para>After I install Linux, and are prompted about installing +LILO, make SURE that I install it on the boot sector of my root +Linux partition, not in the MBR (master boot record).</para></step> + +<step><para>The remaining hard disk space can go to FreeBSD. I also +make sure that my FreeBSD root slice does not go beyond the 1024th +cylinder. (The 1024th cylinder is 528 megs into the disk with our +hypothetical 720MB disks). I will use the rest of the hard drive +(about 270 megs) for the <filename>/usr</> and <filename>/</> slices +if I wish. The rest of the second hard disk (size depends on the +amount of my Windows application/data partition that I created in +step 1 can go to the <filename>/usr/src</> slice and swap +space.</para></step> + +<step><para>When viewed with the Windows 95 <command>fdisk</> utility, my hard drives +should now look something like this: +<screen> +--------------------------------------------------------------------- + + Display Partition Information + +Current fixed disk drive: 1 + +Partition Status Type Volume_Label Mbytes System Usage +C: 1 A PRI DOS 50 FAT** 7% + 2 A Non-DOS (Linux) 300 43% + +Total disk space is 696 Mbytes (1 Mbyte = 1048576 bytes) + +Press Esc to continue + +--------------------------------------------------------------------- + + Display Partition Information + +Current fixed disk drive: 2 + +Partition Status Type Volume_Label Mbytes System Usage +D: 1 A PRI DOS 420 FAT** 60% + +Total disk space is 696 Mbytes (1 Mbyte = 1048576 bytes) + +Press Esc to continue + +--------------------------------------------------------------------- +</screen> +** May say FAT16 or FAT32 if you are using the OEM SR2 update. +See <xref linkend="ch2">).</para></step> + +<step><para>Install FreeBSD. I make sure to boot with my first hard +disk set at <quote>NORMAL</> in the BIOS. If it is not, I'll have +the enter my true disk geometry at boot time (to get this, boot +Windows 95 and consult Microsoft Diagnostics (<filename>MSD.EXE</>), +or check your BIOS) with the parameter <literal>hd0=1416,16,63</> +where <replaceable>1416</> is the number of cylinders on my hard +disk, <replaceable>16</> is the number of heads per track, and +<replaceable>63</> is the number of sectors per track on the +drive.</para></step> + +<step><para>When partitioning out the hard disk, I make sure to install +Boot Easy on the first disk. I don't worry about the second disk, +nothing is booting off of it.</para></step> + +<step><para>When I reboot, Boot Easy should recognize my three +bootable partitions as DOS (Windows 95), Linux, and BSD +(FreeBSD).</para></step> + +</procedure> + +</chapter> + +<chapter id="ch4"> +<title>Special Considerations</title> + +<para>Most operating systems are very picky about where and how they are +placed on the hard disk. Windows 95 and DOS need to be on the first +primary partitiin on the first hard disk. OS/2 is the exception. It +can be installed on the first or second disk in a primary or extended +partition. If you are not sure, keep the beginning of the bootable +partitions below the 1024th cylinder.</para> + +<para>If you install Windows 95 on an existing BSD system, it will +<quote>destroy</> the MBR, and you will have to reinstall your +previous boot manager. Boot Easy can be reinstalled by using the +BOOTINST.EXE utility included in the \TOOLS directory on the CD-ROM, +and via <ulink +URL="ftp://ftp.freebsd.org/pub/FreeBSD/tools">ftp</ulink>. You can +also re-start the installation process and go to the partition +editor. From there, mark the FreeBSD partition as bootable, +select Boot Manager, and then type W to (W)rite out the information +to the MBR. You can now reboot, and Boot Easy should then +recognize Windows 95 as DOS.</para> + +<para>Please keep in mind that OS/2 can read FAT and HPFS partitions, +but not FFS (FreeBSD) or EXT2 (Linux) partitions. Likewise, Windows +95 can only read and write to FAT and FAT32 (see <xref +linkend="ch2">) partitions. FreeBSD can read most file systems, but +currently cannot read HPFS partitions. Linux can read HPFS +partitions, but can't write to them. Recent versions of the Linux +kernel (2.x) can read and write to Windows 95 VFAT partitions (VFAT +is what gives Windows 95 long file names - it's pretty much the same +as FAT). Linux can read and write to most file systems. Got that? +I hope so.</para> + +</chapter> + +<chapter id="ch5"> +<title>Examples</title> + +<para><emphasis>(section needs work, please send your example to +<email>jayrich@in.net</email>)</emphasis>.</para> + +<para>FreeBSD+Win95: If you installed FreeBSD after Windows 95, you +should see <literal>DOS</> on the Boot Easy menu. This is Windows +95. If you installed Windows 95 after FreeBSD, read <xref +linkend="ch4"> above. As long as your hard disk does not have 1024 +cylinders you should not have a problem booting. If one of your +partitions goes beyond the 1024th cylinder however, and you get +messages like <errorname>invalid system disk</> under DOS (Windows 95) +and FreeBSD will not boot, try looking for a setting in your BIOS +called <quote>> 1024 cylinder support</> or <quote>NORMAL/LBA</> +mode. DOS may need LBA (Logical Block Addressing) in order to boot +correctly. If the idea of switching BIOS settings every time you +boot up doesn't appeal to you, you can boot FreeBSD through DOS via +the <filename>FBSDBOOT.EXE</> utility on the CD (It should find your +FreeBSD partition and boot it.)</para> + +<para>FreeBSD+OS/2+Win95: Nothing new here. OS/2's boot manger +can boot all of these operating systems, so that shouldn't be a +problem.</para> + +<para>FreeBSD+Linux: You can also use Boot Easy to boot both operating +systems.</para> + +<para>FreeBSD+Linux+Win95: (see <xref linkend="ch3">)</para> + +</chapter> + +<chapter id="sources"> +<title>Other Sources of Help</title> + +<para>There are many <ulink +URL="http://www.ssc.com/linux/howto.html">Linux HOW-TOs</ulink> that +deal with multiple operating systems on the same hard disk.</para> + +<para>The <ulink +URL="http://sunsite.unc.edu/mdw/HOWTO/mini/Linux+OS2+DOS">Linux+OS/2+DOS +Mini-HOWTO</ulink> offers help on configuring the OS/2 boot +manager. The <ulink +URL="http://www.in.net/~jkatz/win95/Linux-HOWTO.html">Linux-HOWTO</ulink> +is also helpful.</para> + +<para>The <ulink +URL="http://www.dorsai.org/~dcl/publications/NTLDR_Hacking">NT Loader +Hacking Guide</ulink> provides good information on multibooting +Windows NT, '95, and DOS with other operating systems.</para> + +<para>And Hale Landis's "How It Works" document pack contains some good info +on all sorts of disk geometry and booting related topics. Here are a few +links that might help you find it: <ulink URL="ftp://fission.dt.wdc.com/pub/otherdocs/pc_systems/how_it_works/allhiw.zip">ftp://fission.dt.wdc.com/pub/otherdocs/pc_systems/how_it_works/allhiw.zip</ulink>, +<ulink URL="http://www.cs.yorku.ca/People/frank/docs/">http://www.cs.yorku.ca/People/frank/docs/</ulink>.</para> + +<para>Finally, don't overlook FreeBSD's kernel documentation on the booting +procedure, available in the kernel source distribution (it unpacks to +<ulink URL="file:/usr/src/sys/i386/boot/biosboot/README.386BSD">file:/usr/src/sys/i386/boot/biosboot/README.386BSD</ulink>.</para> + +</chapter> + +<chapter> +<title>Technical Details</title> + +<para><emphasis>(Contributed by Randall Hopper, +<email>rhh@ct.picker.com</email>)</emphasis></para> + +<para>This section attempts to give you enough basic information +about your hard disks and the disk booting process so that you can +troubleshoot most problems you might encounter when getting set up to +boot several operating systems. It starts in pretty basic terms, so +you may want to skim down in this section until it begins to look +unfamiliar and then start reading.</para> + + +<sect1> +<title>Disk Primer</title> + +<para>Three fundamental terms are used to describe the location of +data on your hard disk: Cylinders, Heads, and Sectors. It's not +particularly important to know what these terms relate to except to +know that, together, they identify where data is physically on your +disk.</para> + +<para>Your disk has a particular number of cylinders, number of +heads, and number of sectors per cylinder-head (a cylinder-head also +known nown as a track). Collectively this information defines the +"physical disk geometry" for your hard disk. There are typically 512 +bytes per sector, and 63 sectors per track, with the number of +cylinders and heads varying widely from disk to disk. Thus you can +figure the number of bytes of data that'll fit on your own disk by +calculating: <informalexample><para>(# of cylinders) × (# +heads) × (63 sectors/track) × (512 +bytes/sect)</></informalexample> For example, on my 1.6 Gig Western +Digital AC31600 EIDE hard disk,that's: <informalexample><para>(3148 +cyl) × (16 heads) × (63 sectors/track) × (512 +bytes/sect)</para></informalexample></para> + +<para>which is 1,624,670,208 bytes, or around 1.6 Gig.</para> + +<para>You can find out the physical disk geometry (number of +cylinders, heads, and sectors/track counts) for your hard disks using +ATAID or other programs off the net. Your hard disk probably came +with this information as well. Be careful though: if you're using +BIOS LBA (see <xref linkend="limits">), you can't use just any +program to get the physical geometry. This is because many programs +(e.g. <filename>MSD.EXE</> or FreeBSD fdisk) don't identify the +physical disk geometry; they instead report the +<firstterm>translated geometry</> (virtual numbers from using LBA). +Stay tuned for what that means.</para> + +<para>One other useful thing about these terms. Given 3 +numbers—a cylinder number, a head number, and a +sector-within-track number—you identify a specific absolute +sector (a 512 byte block of data) on your disk. Cylinders and Heads +are numbered up from 0, and Sectors are numbered up from 1.</para> + +<para>For those that are interested in more technical details, +information on disk geometry, boot sectors, BIOSes, etc. can be found +all over the net. Query Lycos, Yahoo, etc. for <literal>boot +sector</> or <literal>master boot record</>. Among the useful info +you'll find are Hale Landis's <citetitle>How It Works</> document +pack. See the <xref linkend="sources"> section for a few pointers to +this pack.</para> + +<para>Ok, enough terminology. We're talking about booting +here.</para> + +</sect1> + +<sect1 id="booting"> +<title>The Booting Process</title> + +<para>On the first sector of your disk (Cyl 0, Head 0, Sector 1) +lives the Master Boot Record (MBR). It contains a map of your disk. +It identifies up to 4 <firstterm>partitions</>, each of which is a +contiguous chunk of that disk. FreeBSD calls partitions +<firstterm>slices</> to avoid confusion with it's own partitions, but +we won't do that here. Each partition can contain its own operating +system.</para> + +<para>Each partition entry in the MBR has a <firstterm>Partition +ID</>, a <firstterm>Start Cylinder/Head/Sector</>, and an +<firstterm>End Cylinder/Head/Sector</>. The Partition ID tells what +type of partition it is (what OS) and the Start/End tells where it +is. <xref linkend="tbl-pid"> lists a smattering of some common +Partition IDs.</para> + +<table id="tbl-pid"> +<title>Partition IDs</> +<tgroup cols="2"> +<thead> +<row> +<entry>ID (hex)</entry> +<entry>Description</entry> +</row> +</thead> + +<tbody> +<row> +<entry>01</entry> +<entry>Primary DOS12 (12-bit FAT)</entry> +</row> + +<row> +<entry>04</entry> +<entry>Primary DOS16 (16-bit FAT)</entry> +</row> + +<row> +<entry>05</entry> +<entry>Extended DOS</entry> +</row> + +<row> +<entry>06</entry> +<entry>Primary big DOS (> 32MB)</entry> +</row> + +<row> +<entry>0A</entry> +<entry>OS/2</entry> +</row> + +<row> +<entry>83</entry> +<entry>Linux (EXT2FS)</entry> +</row> + +<row> +<entry>A5</entry> +<entry>FreeBSD, NetBSD, 386BSD (UFS)</entry> +</row> + +</tbody> +</tgroup> +</table> + +<para>Note that not all partitions are bootable (e.g. Extended DOS). +Some are—some aren't. What makes a partition bootable is the +configuration of the <firstterm>Partition Boot Sector</> that exists +at the beginning of each partition.</para> + +<para>When you configure your favorite boot manager, it looks up the entries +in the MBR partition tables of all your hard disks and lets you name the +entries in that list. Then when you boot, the boot manager is invoked by +special code in the Master Boot Sector of the first probed hard disk on +your system. It looks at the MBR partition table entry corresponding to +the partition choice you made, uses the Start Cylinder/Head/Sector +information for that partition, loads up the Partition Boot Sector for that +partition, and gives it control. That Boot Sector for the partition itself +contains enough information to start loading the operating system on that +partition.</para> + +<para>One thing we just brushed past that's important to know. All of your +hard disks have MBRs. However, the one that's important is the one on the +disk that's first probed by the BIOS. If you have only IDE hard disks, its +the first IDE disk (e.g. primary disk on first controller). Similarly for +SCSI only systems. If you have both IDE and SCSI hard disks though, the +IDE disk is typically probed first by the BIOS, so the first IDE disk is +the first probed disk. The boot manager you will install will be hooked into +the MBR on this first probed hard disk that we've just described.</para> + +</sect1> + +<sect1 id="limits"> +<title>Booting Limitations and Warnings</title> + +<para>Now the interesting stuff that you need to watch out for.</para> + +<sect2> +<title>The dreaded 1024 cylinder limit and how BIOS LBA helps</title> + +<para>The first part of the booting process is all done through the +BIOS, (if that's a new term to you, the BIOS is a software chip on +your system motherboard which provides startup code for your +computer). As such, this first part of the process is subject to the +limitations of the BIOS interface.</para> + +<para>The BIOS interface used to read the hard disk during this period +(INT 13H, Subfunction 2) allocates 10 bits to the Cylinder Number, 8 +bits to the Head Number, and 6 bits to the Sector Number. This +restricts users of this interface (i.e. boot managers hooked into +your disk's MBR as well as OS loaders hooked into the Boot Sectors) +to the following limits: +<itemizedlist> +<listitem><para>1024 cylinders, max</para></listitem> +<listitem><para>256 heads , max</para></listitem> +<listitem><para>64 cylinders, max (actually 63, <literal>0</> isn't +available)</para></listitem> +</itemizedlist> +</para> + +<para>Now big hard disks have lots of cylinders but not a lot of +heads, so invariably with big hard disks the number of cylinders is +greater than 1024. Given this and the BIOS interface as is, you +can't boot off just anywhere on your hard disk. The boot code (the +boot manager and the OS loader hooked into all bootable partitions' +Boot Sectors) has to reside below cylinder 1024. In fact, if your +hard disk is typical and has 16 heads, this equates to: +<informalexample> +<para>1024 cyl/disk × 16 heads/disk × 63 sect/(cyl-head) +× 512 bytes/sector</para> +</informalexample> +</para> + +<para>which is around the often-mentioned 528MB limit.</para> + +<para>This is where BIOS LBA (Logical Block Addressing) comes in. BIOS LBA +gives the user of the BIOS API calls access to physical cylinders above +1024 though the BIOS interfaces by redefining a cylinder. That is, it +remaps your cylinders and heads, making it appear through the BIOS as +though the disk has fewer cylinders and more heads than it actually +does. In other words, it takes advantage of the fact that hard disks have +relatively few heads and lots of cylinders by shifting the balance between +number of cylinders and number of heads so that both numbers lie below the +above-mentioned limits (1024 cylinders, 256 heads).</para> + +<para>With BIOS LBA, the hard disk size limitation is virtually +removed (well, pushed up to 8 Gigabytes anyway). If you have an LBA +BIOS, you can put FreeBSD or any OS anywhere you want and not hit the +1024 cylinder limit.</para> + +<para>To use my 1.6 Gig Western Digital as an example again, it's +physical geometry is: +<informalexample> +<para>(3148 cyl, 16 heads, 63 sectors/track, 512 bytes/sector)</para> +</informalexample> +</para> + +<para>However, my BIOS LBA remaps this to: +<informalexample> +<para>( 787 cyl, 64 heads, 63 sectors/track, 512 bytes/sector)</para> +</informalexample> +</para> + +<para>giving the same effective size disk, but with cylinder and head +counts within the BIOS API's range (Incidentally, I have both Linux and +FreeBSD existing on one of my hard disks above the 1024th physical +cylinder, and both operating systems boot fine, thanks to BIOS LBA).</para> + +</sect2> + +<sect2> +<title>Boot Managers and Disk Allocation</title> + +<para>Another gotcha to watch out when installing boot managers is +allocating space for your boot manager. It's best to be aware of +this issue up front to save yourself from having to reinstall one or +more of your OSs.</para> + +<para>If you followed the discussion in <xref linkend="booting"> +about the Master Boot Sector (where the MBR is), Partition Boot +Sectors, and the booting process, you may have been wondering just +exactly where on your hard disk that nifty boot manager is going to +live. Well, some boot managers are small enough to fit entirely +within the Master Boot Sector (Cylinder 0, Head 0, Sector 0) along +with the partition table. Others need a bit more room and actually +extend a few sectors past the Master Boot Sector in the Cylinder 0 +Head 0 track, since that's typically free…typically.</para> + +<para>That's the catch. Some operating systems (FreeBSD included) let +you start their partitions right after the Master Boot Sector at +Cylinder 0, Head 0, Sector 2 if you want. In fact, if you give +FreeBSD's sysinstall a disk with an empty chunk up front or the whole +disk empty, that's where it'll start the FreeBSD partition by default +(at least it did when I fell into this trap). Then when you go to +install your boot manager, if it's one that occupies a few extra +sectors after the MBR, it'll overwrite the front of the first +partition's data. In the case of FreeBSD, this overwrites the +disk label, and renders your FreeBSD partition unbootable.</para> + +<para>The easy way to avoid this problem (and leave yourself the +flexibility to try different boot managers later) is just to always +leave the first full track on your disk unallocated when you +partition your disk. That is, leave the space from Cylinder 0, Head +0, Sector 2 through Cylinder 0, Head 0, Sector 63 unallocated, and +start your first partition at Cylinder 0, Head 1, Sector 1. +For what it's worth, when you create a DOS partition at the +front of your disk, DOS leaves this space open by default (this is +why some boot managers assume it's free). So creating a DOS +partition up at the front of your disk avoids this problem +altogether. I like to do this myself, creating 1 Meg DOS partition +up front, because it also avoids my primary DOS drive letters +shifting later when I repartition.</para> + +<para>For reference, the following boot managers use the +Master Boot Sector to store their code and data: +<itemizedlist> + +<listitem> +<para>OS-BS 1.35</para> +</listitem> + +<listitem> +<para>Boot Easy</para> +</listitem> + +<listitem> +<para>LILO</para> +</listitem> + +</itemizedlist> +</para> + +<para>These boot managers use a few additional sectors after the +Master Boot Sector: +<itemizedlist> + +<listitem> +<para>OS-BS 2.0 Beta 8 (sectors 2-5)</para> +</listitem> + +<listitem> +<para>OS/2's boot manager</para> +</listitem> + +</itemizedlist> +</para> + +</sect2> + +<sect2> +<title>What if your machine won't boot?</title> + +<para>At some point when installing boot managers, you might leave the +MBR in a state such that your machine won't boot. This is unlikely, +but possible when re-FDISKing underneath an already-installed boot +manager.</para> + +<para>If you have a bootable DOS partition on your disk, you can boot +off a DOS floppy, and run: +<informalexample> +<screen>A:\> <userinput>FDISK /MBR</></screen> +</informalexample> +</para> + +<para>to put the original, simple DOS boot code back into the system. You can +then boot DOS (and DOS only) off the hard drive. Alternatively, just +re-run your boot manager installation program off a bootable floppy.</para> + +</sect2> +</sect1> +</chapter> +</book> diff --git a/en_US.ISO_8859-1/tutorials/Makefile b/en_US.ISO_8859-1/tutorials/Makefile index 145d4a8a68..3dc4224078 100644 --- a/en_US.ISO_8859-1/tutorials/Makefile +++ b/en_US.ISO_8859-1/tutorials/Makefile @@ -1,5 +1,5 @@ DOCS= index.sgml -SUBDIR= devel disklessx fonts mh newuser -DOCSUBDIR= ddwg multios ppp +SUBDIR= devel disklessx fonts mh multios newuser +DOCSUBDIR= ddwg ppp .include "../web.mk" diff --git a/en_US.ISO_8859-1/tutorials/index.sgml b/en_US.ISO_8859-1/tutorials/index.sgml index e24b28819a..baae8ced1c 100644 --- a/en_US.ISO_8859-1/tutorials/index.sgml +++ b/en_US.ISO_8859-1/tutorials/index.sgml @@ -1,6 +1,6 @@ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN" [ <!ENTITY base CDATA ".."> -<!ENTITY date "$Date: 1997-03-19 07:28:32 $"> +<!ENTITY date "$Date: 1997-03-23 16:27:40 $"> <!ENTITY title "FreeBSD Tutorials"> <!ENTITY % includes SYSTEM "../includes.sgml"> %includes; ]> @@ -29,9 +29,7 @@ (<a href="ppp/ppp.ps">postscript</a>, <a href="ppp/ppp-html.tar.gz">gzipd tar file</a>)</li> - <li><a href="multios/multios.html">Using FreeBSD with other operating systems</a> - (<a href="multios/multios.ps">postscript</a>, - <a href="multios/multios-html.tar.gz">gzipd tar file</a>)</li> + <li><a href="multios/multios.html">Using FreeBSD with other operating systems</a></li> <li><a href="fonts/fonts.html">Fonts and FreeBSD</a></li> |