The Linux+FreeBSD mini-HOWTO : The FreeBSD way of labelling hard drives : FreeBSD ``slices'' and ``partitions''
Previous: The FreeBSD way of labelling hard drives
Next: Drive and partition labelling in Linux and FreeBSD

2.1. FreeBSD ``slices'' and ``partitions''FreeBSD dualboot!disk drive partitions FreeBSD dualboot!disk drive slices

FreeBSD needs one of the four entries in the partition table on your PC's hard drive. This primary partition is called a ``slice'' in FreeBSD terminology. It then uses the disklabel program to make up to eight partitions in this primary partition. These logical partitions are called ``partitions'' in FreeBSD terminology. This concept is similar to the way Linux (and DOS) handles logical partitions in an extended partition. You cannot install FreeBSD in an extended partition made by Linux (or DOS). Note that the Linux fdisk program doesn't display the BSD partitions in a FreeBSD slice from the main menu, but it can display BSD disklabel information if you give the command `b'. The output is something like this (/dev/hda4 is the FreeBSD slice):

bash# fdisk /dev/hda

Command (m for help): p

Disk /dev/hda: 64 heads, 63 sectors, 621 cylinders
Units = cylinders of 4032 * 512 bytes

   Device Boot   Begin    Start      End   Blocks   Id  System
/dev/hda1   *        1        1       27    54400+  83  Linux native
/dev/hda2           28       28       55    56448   83  Linux native
/dev/hda3           56       56      403   701568   83  Linux native
/dev/hda4          404      404      621   439488   a5  BSD/386

Command (m for help): b
Reading disklabel of /dev/hda4 at sector 1624897.

BSD disklabel command (m for help): p

8 partitions:
#        size   offset    fstype   [fsize bsize   cpg]
  a:    64512  1624896    4.2BSD        0     0     0   # (Cyl.  404 - 419)
  b:   104832  1689408      swap                        # (Cyl.  420 - 445)
  c:   878976  1624896    unused        0     0         # (Cyl.  404 - 621)
  e:    64512  1794240    4.2BSD        0     0     0   # (Cyl.  446 - 461)
  f:   645120  1858752    4.2BSD        0     0     0   # (Cyl.  462 - 621)

BSD disklabel command (m for help): q
bash#

The letters `a'...`f' in the first column are the same labels as shown below in the example for a FreeBSD slice. There are three special partitions in BSD parlace. The letter `a' designates the root partition, `b' designates the swap partition, while `c' designates the whole slice. See the FreeBSD documentation for more information on the ``standard'' way of assigning these letters to different partition types.


The Linux+FreeBSD mini-HOWTO : The FreeBSD way of labelling hard drives : FreeBSD ``slices'' and ``partitions''
Previous: The FreeBSD way of labelling hard drives
Next: Drive and partition labelling in Linux and FreeBSD