NAME
ccd —
Concatenated disk driver
SYNOPSIS
pseudo-device ccd
DESCRIPTION
The
ccd driver provides the capability of combining one or
more disks/partitions into one virtual disk.
This document assumes that you're familiar with how to generate kernels, how to
properly configure disks and pseudo-devices in a kernel configuration file,
and how to partition disks.
Note that the ‘raw’ partitions of the disks
must
not be combined. Each component partition should be offset at least one
cylinder from the beginning of the component disk. This avoids potential
conflicts between the component disk's disklabel and the
ccd's disklabel. The kernel will only allow component
partitions of type
FS_CCD
. But for now, it allows
partition of all types since some port lacks support of an on-disk BSD
disklabel. The partition of
FS_UNUSED
may be rejected
because device driver of component disk will refuse it.
In order to compile in support for the
ccd, you must add a
line similar to the following to your kernel configuration file:
pseudo-device ccd # concatenated disk devices
The
ccds are allocated dynamically as needed.
A
ccd may be either serially concatenated or interleaved. To
serially concatenate the partitions, specify the interleave factor of 0.
If a
ccd is interleaved correctly, a “striping”
effect is achieved, which can increase performance. Since the interleave
factor is expressed in units of
DEV_BSIZE
, one must
account for sector sizes other than
DEV_BSIZE
in order
to calculate the correct interleave. The kernel will not allow an interleave
factor less than the size of the largest component sector divided by
DEV_BSIZE
.
Note that best performance is achieved if all component disks have the same
geometry and size. Optimum striping cannot occur with different disk types.
Also note that the total size of concatenated disk may vary depending on the
interleave factor even if the exact same components are concatenated. And an
old on-disk disklabel may be read after interleave factor change. As a result,
the disklabel may contain wrong partition geometry and will cause an error
when doing I/O near the end of concatenated disk.
There is a run-time utility that is used for configuring
ccds.
See
ccdconfig(8) for more
information.
WARNINGS
If just one (or more) of the disks in a non-mirrored
ccd
fails, the entire file system will be lost.
FILES
- /dev/{,r}ccd*
- ccd device special files.
SEE ALSO
config(1),
ccdconfig(8),
fsck(8),
MAKEDEV(8),
mount(8),
newfs(8)
HISTORY
The concatenated disk driver was originally written at the University of
Utah.