Partitioning is a means to divide a single hard drive into many logical drives. A partition is a contiguous set of blocks on a drive that are treated as an independant disk. A partition table (the creation of which is the topic of this HOWTO) is an index that relates sections of the hard drive to partitions.
Why have multiple partitions?
Encapsulate your data. Since file system corruption is local to a partition, you stand to lose only some of your data if an accident occurs.
Increase disk space efficiency. You can format partitions with varying block sizes, depending on your usage. If your data is in a large number of small files (less than 1k) and your partition uses 4k sized blocks, you are wasting 3k for every file. In general, you waste on average one half of a block for every file, so matching block size to the average size of your files is important if you have many files.
Limit data growth. Runaway processes or maniacal users can consume so much disk space that the operating system no longer has room on the hard drive for its bookkeeping operations. This will lead to disaster. By segregating space, you ensure that things other than the operating system die when allocated disk space is exhausted.
Partitions must not overlap. This will cause data corruption and other spooky stuff.
There ought to be be no gap between adjacent partitions. While this is not harmful, you are wasting precious disk space by leaving space between partitions.
A disk need not be partitioned completely. You may decide to leave some unpartitioned space at the end of your disk and partition it later.
Partitions cannot be moved but they can be resized and copied using special software. This HOWTO only covers the use of the fdisk utility, which does not permit any of these operations.
sfdisk: a command-line version of fdisk
cfdisk: a curses-based version of fdisk
parted: Gnu partition editor
Partition Magic: a commercial utility to create, resize, merge and convert partitions, without destroying data.
Disk Drake: a Perl/Gtk program to create, rsize, and delete partitions
Table 1. Related HOWTOs
|Linux Multiple Disk System Tuning||How to estimate the various size and speed requirements for different parts of the filesystem.|
|Linux Large Disk||Instructions and considerations regarding disks with more than 1024 cylinders|
|Linux Quota||Instructions on limiting disk space usage per user (quotas)|
|Partition-Rescue mini-HOWTO||How to restore linux partitions after they have been deleted by a Windows install. Does not appear to preserve data.|
|Linux ADSM Backup||Instructions on integrating Linux into an IBM ADSM backup environment.|
|Linux Backup with MSDOS||Information about MS-DOS driven Linux backups.|
|Linux HOWTO Index||Instructions on writing and submitting a HOWTO document|