Formatting Media For Use With FreeBSD

A Tutorial

March 1997

Legal Notice

This document describes how to slice, partition, and format hard disk drives and similar media for use with FreeBSD. The examples given have been tested under FreeBSD 2.2 and should work for other releases. The text has been updated for FreeBSD version 4.


1 Introduction & Definitions

1.1 Overview

Successfully adding disks to an existing system is the mark of an experienced system administrator. Slicing, partitioning, and adding disks requires a careful dance of proper command and name syntax. One slipped finger and an entire disk could disappear in seconds. This document is written in an attempt to simplify this process and avoid accidents. Thankfully, enhancements to existing tools (notably sysinstall) have greatly improved this process in recent releases of FreeBSD.

There are two possible modes of disk formatting:

  • compatibility mode: Arranging a disk so that it has a slice table for use with other operating systems.

  • dedicated mode, sometimes called dangerously dedicated mode: Formatting a disk with no slice table. This makes the process of adding disks easier, however non-FreeBSD operating systems may not accept the disk. The term dangerously refers to the danger that the system may not recognize a disk formatted in this manner.

For most cases, dedicated mode is the easiest to set up and use in existing systems, as a new disk is usually dedicated entirely to FreeBSD. However, compatibility mode insures optimum interoperability with future installations at a cost of increased complexity.

In addition to selecting the mode, two methods of slicing the disk are available. One is using the system installation tool /stand/sysinstall. 2.1.7-RELEASE and later versions of sysinstall contain code to ease setup of disks during normal system operation, mainly allowing access to the Label and Partition editors and a Write feature which will update just the selected disk and slice without affecting other disks. The other method is running the tools manually from a root command line. For dedicated mode, only three or four commands are involved while sysinstall requires some manipulation.

1.2 Definitions

UNIX® disk management over the centuries has invented many new definitions for old words. The following glossary covers the definitions used in this document and (hopefully) for FreeBSD in general.

  • compatibility mode: Arranging a disk so that it has a slice table for use with other operating systems. Oppose dedicated mode.

  • (dangerously) dedicated mode: Formatting a disk with no slice table. This makes the process of adding disks easier, however non-FreeBSD operating systems may not accept the disk. Oppose compatibility mode.

  • disk: Hard disks, CDROMs, magneto-optical devices and Zip®/Jaz® removable media are example of storage devices commonly used today. The basic principle of the way these work is that one or more spinning disks spin by a motor, while a head, moving on a radial path close to the disks, reads from or writes data to the disk. Writing is done by modifying some physical properties of the disk (magnetic flow, reflectivity, etc.) while reading is done by “detecting” changes to the same physical properties of the disk.

  • slice: A division of a disk. Up to four slices are permitted on one disk in the PC standard. Slices are composed of contiguous sectors. Slices are recorded in a “slice table” used by the system BIOS to locate bootable partitions. The slice table is usually called the “partition table” in DOS parlance. Maintained by the fdisk utility.

  • partition: A division of a slice. Usually used in reference to divisions of the FreeBSD slice of a disk. Each filesystem and swap area on a disk resides in a partition. Maintained using the disklabel utility.

  • sector: Smallest subdivision of a disk. One sector usually represents 512 bytes of data.

1.3 Warnings & Pitfalls

Building disks is not something to take lightly. It is quite possible to destroy the contents of other disks in your system if the proper precautions are not taken.

Check your work carefully. It is very simple to destroy the incorrect disk when working with these commands. When in doubt consult the kernel boot output for the proper device.

Needless to say, we are not responsible for any damage to any data or hardware that you may experience. You work at your own risk!

1.4 Zip, Jaz, and Other Removables

Removable disks can be formatted in the same way as normal hard disks. It is essential to have the disk drive connected to the system and a disk placed in the drive during startup, so the kernel can determine the drive's geometry. Check the dmesg output and make sure your device and the disk's size is listed. If the kernel reports

Can't get the size
then the disk was not in the drive. In this case, you will need to restart the machine before attempting to format disks.