Creating boot floppies for FreeBSDOne of the most common and oft-misunderstood steps in installing FreeBSD. But it’s quite straight forward.
Note that 3.1 and above needs two floppies. Previous versions used only one floppy.
What are boot floppies for?The boot floppy contains a minature version of FreeBSD. Just enough for it to see the disk, the network, and to transfer the files it needs in order to install the full version of the operating system.
Where do you get the files?You’ll either be installing from CD-ROM or the Internet. In either case, each FreeBSD release you will find a floppies directory and a tools directory. These contain the files you need, but you don’t need everything in those directories.
If you have a CD-ROM, it will be on the first CD.
When installing from the Internet, you can choose an FTP site from Official mirrors.
The instructionsThe instructions for creating boot floppies are floppies/README.TXT in the installation set you are using. For example, ftp://ftp.FreeBSD.ORG/pub/FreeBSD/releases/i386/3.4-RELEASE/floppies/README.TXT contains the instructions for 3.4-RELEASE.
Note that the files you are copying are not DOS files so you can not use regular copy procedures to put them on the floppy. Remember to use the fdimage.exe tool as found in the tools directory.
How I did itFor this example, I assume you are installing 3.1-RELEASE.
I always find it easiest to create boot floppies using my NT box. I used FTP to copy files from pub/FreeBSD/release/3.1-RELEASE/floppies. In that same directory you will find README.TXT. Please read it. It contains the instructions for creating floppies.
I downloaded the following files from the FTP site onto my drive:
/pub/FreeBSD/tools/tools/fdimage.exe /pub/FreeBSD/releases/i386/3.4-RELEASE/floppies/kern.flp /pub/FreeBSD/releases/i386/3.4-RELEASE/floppies/mfsroot.flp
Then I followed the instructions in README.TEXT (see previous paragraphs for the location of this file) and created the two floppies. With 2.2.*, only one floppy was needed. With 3.*, you need two floppies. However, you can create a single floppy if you use one of those high capacity floppies. See the instructions for details.
DOSThe following two command will create boot floppies for you. Use one command on each floppy (i.e. put kern.flp on one, mfsroot.flp on the other). This step assumes you have downloaded all files to the same directory (in this case, C:\TEMP but you can use whatever directory you wish).
C:\TEMP>fdimage kern.flp a:
<put a new floppy in the drive>C:\TEMP>fdimage mfsroot.flp a:
With the above method, I’ve always been above to create boot floppies.
FreeBSDUnder FreeBSD, it seems to take about 50 seconds to create each floppy.
Here’s what a sucessful creation looks like:
# dd if=kern.flp of=/dev/fd0c 2880+0 records in 2880+0 records out 1474560 bytes transferred in 193.898431 secs (7605 bytes/sec)
<put a new floppy in the drive>
# dd if=mfsroot.flp of=/dev/fd0c 2880+0 records in 2880+0 records out 1474560 bytes transferred in 193.197363 secs (7632 bytes/sec)
|Don’t use the raw device under FreeBSD. If you do,
here’s what you’ll get:|
# dd if=kern.flp of=/dev/rfd0 dd: /dev/rfd0: Input/output error 1+0 records in 0+0 records out 0 bytes transferred in 2.711716 secs (0 bytes/sec)
Common errorsDefective floppies. If you get *any* errors when writing to or reading from the floppies, get new floppies and start again.
If you are creating floppies from DOS, and you get told a file is too big, you probably downloaded the file in ASCII mode, not binary mode. Try again:
E:\FreeBSD>fdimage kern.flp a: kern.flp - File is too big
Here are the incorrect file sizes which led to the above error:
06-12-00 12:56p 1,479,370 kern.flp 06-12-00 12:56p 1,477,679 mfsroot.flp
And these are the correct file sizes:
06-12-00 01:00p 1,474,560 kern.flp 06-12-00 01:00p 1,474,560 mfsroot.flp