14.6 Preparing a Hard Disk for Use

After you have physically installed the hard disk and configured CMOS Setup to recognize it, that drive must still be prepared before it can store data. This process requires three steps:

Low-level formatting

Low-level formatting, also called physical formatting, records the tracks and sectors that are used to store data. Low-level formatting occurs at the hardware level, and is independent of the way that the disk will be divided and of the operating system that will use it. All ATA and most SCSI drives are low-level formatted at the factory, so you may not need to perform this step yourself.


Partitioning divides the physical disk into one or more logical sections, each of which will contain one or more logical volumes identified by drive letter or a mount point under Linux. Any hard disk must contain at least one partition with at least one volume. Any new hard drive must be partitioned before it can be used.

Logical formatting

Logical formatting, also called high-level formatting or DOS formatting, creates within the volume the logical disk structure (called the filesystem) needed by a particular operating system to store its data. Drives that will be accessed by DOS, Windows 3.X, and Windows 9X use the FAT filesystem (which comes in several variants). Windows NT/2000/XP uses either FAT or NTFS filesystems. Linux generally uses ext2, but ext3 is becoming more common.

The following sections examine each of these steps in turn.

14.6.1 Low-Level Formatting

Low-level formatting a hard drive lays down the tracks and sectors that will be used to store data and also embeds servo information that the drive head positioning mechanism uses to locate those tracks and sectors. Modern drives are low-level formatted at the factory, and cannot be low-level formatted by the user.

You sometimes need to low-level format a drive, or at least do something that resembles a low-level format. The three most common situations that require formatting a drive down to bare metal are the presence of a virus that cannot be eradicated by a logical format or by repartitioning the drive, a corrupted partition table that cannot be corrected by using a partitioning utility, and a drive that is beginning to develop bad sectors.

For all these situations, the solution is to pseudo-low-level format the drive with the maintenance utility provided by the drive manufacturer. Although these utilities do not do a true low-level format, they write binary zeros to every accessible bit on the drive, wiping all data and partitions from the drive. These utilities also typically have a sector-sparing function that allows them to detect bad sectors and swap them out for a spare sector, returning that drive to its factory-fresh, error-free state.

If you need to do a low-level format of your drive, download the latest version of the low-level format utility from the manufacturer's web site. Create a DOS-bootable diskette, and copy the low-level format program executable to that floppy. Boot the floppy and run the format program, carefully following all instructions supplied with the utility.

Most SCSI host adapters include a low-level format utility in ROM.

14.6.2 Partitioning

The next step required to prepare a disk for use is called partitioning. Partitioning logically divides a disk into segments, each of which can be logically formatted to store data in the format, or filesystem, used by a particular operating system. Understanding partitioning

Each physical disk must have at least one partition, and may have as many as four. Creating the first partition on a physical disk drive creates the Master Boot Record (MBR) for that disk and writes the MBR to the first physical sector. Subsequent changes to the partitioning of that disk, no matter which operating system makes them, update that single MBR. The MBR on each physical disk contains a section called the partition table. The partition table tells the computer and the operating system how the hard disk is logically divided and how to access the information stored on that hard disk.

There are two types of partitions. A primary partition is one from which the computer may be booted. Each primary partition is logically formatted as a single volume for a particular operating system and is assigned one drive letter. A primary partition may occupy all or part of a physical hard drive, and a single hard drive may contain from zero to four primary partitions.

The second type of partition is called an extended partition. An extended partition is essentially a virtual physical disk, which may itself be subdivided into logical volumes. A disk may contain zero or one extended partition. The computer cannot be initialized from an extended partition, although the operating system files may reside on a volume located on an extended partition.

Extended partitions are neither formatted nor assigned drive letters. Instead, extended partitions are further divided, or subpartitioned, into logical volumes, each of which may be logically formatted and assigned its own drive letter under Windows or mount point under Linux. Each of these logical drives may be treated as an independent entity. You might, for example, create an extended partition, subdivide it into two logical drives, and then format one of these drives for FAT and the other for NTFS.

If a physical disk contains multiple primary partitions, you may format each primary partition for a different operating system, and mark one primary partition as active, which causes the computer to boot the operating system contained within that partition. Using multiple primary partitions is one way to install and boot multiple operating systems from the same hard disk. For the system to boot from the hard disk, at least one partition must be marked active. To change which operating system boots, you must use fdisk or another partitioning utility to change the active partition.

Windows NT/2000/XP refers to the active partition as the system partition. It contains the hardware-specific operating system bootstrap files needed to initialize the computer and begin the boot process. A disk may also contain a boot partition, which may be located on either a primary partition or a logical volume within an extended partition. The boot partition contains the remainder of the operating system files needed to load and run the operating system. The system partition and the boot partition may be (and often are) the same partition, or they may be located in different partitions, including those located on separate physical disk drives.

The system partition must be located on a primary partition, but the boot files of another operating system may share that primary partition. For example, one convenient way to dual-boot Windows 98 and Windows NT is to partition the disk with an active primary C: partition and a D: volume, which may be a primary partition or a logical drive in an extended partition. Installing Windows 98 to C: makes that volume bootable. Installing Windows NT to D: automatically installs the boot files to C:, making it the NT system partition, and installs the remainder of Windows NT to D:, making it the NT boot partition. Windows NT Setup also installs a boot manager, which allows you to choose between booting Windows 98 and Windows NT when you start the system. The advantage to implementing dual-boot this way is that you don't have to change the active partition to boot the other operating system.

To summarize:

  • To be accessible to the operating system, each physical disk drive must contain at least one and at most four partitions. These partitions may be primary partitions or extended partitions.

  • A physical disk drive may contain from zero to four primary partitions, each of which is formatted as a single unit and assigned its own drive letter. Each primary partition is formatted for a single type of filesystem. Different primary partitions on the same physical disk drive may be formatted for different operating systems. A primary partition may be any combination of (a) a system partition, which is used to start the operating system, (b) a boot partition, which contains operating system files, or (c) a general-purpose partition, which is used to store user files.

  • A physical disk drive may contain zero or one extended partition. If the drive contains an extended partition, it may contain at most three primary partitions. An extended partition may be divided into one or more logical volumes, each of which may be formatted to contain a single type of filesystem. Different logical volumes within an extended partition may contain different filesystems.

  • The system partition, also called the active partition, is a primary partition that contains the hardware-specific files needed to initialize the system and begin the boot process. Exactly one active partition must be present on the computer for it to boot.

  • The boot partition contains the remaining files needed to run the operating system. The boot partition may be located on a primary partition, or on a logical volume within an extended partition. The boot partition may be and often is the same partition as the system partition. How drive letters are assigned

Partitioning a disk with DOS or Windows assigns a drive letter to each primary partition and each logical volume created in an extended partition, a process called dynamic drive letter assignment. Adding and partitioning another hard disk or changing partitions on an existing hard disk may cause existing drive letters to change, which can confuse programs that expect themselves or their data to be on a particular volume and suddenly find that is no longer true. Modifying partitions under DOS or Windows 9X assigns drive letters as follows:

  • Physical disks are numbered sequentially. The Primary Master is Disk 0, the Primary Slave is Disk 1, the Secondary Master is Disk 2, and the Secondary Slave is Disk 3. For SCSI disks, the drive with the lowest SCSI ID is Disk 0, the one with the next-higher SCSI ID is Disk 1, and so on.

  • The first primary partition on each physical disk, beginning with Disk 0, is assigned a drive letter sequentially, beginning with C:. The first primary partition on each higher-numbered disk is then assigned the next drive letter in sequence. A disk that has no primary partition is skipped during this process.

  • Starting with Disk 0, each logical volume is assigned a drive letter. All logical volumes on each disk are assigned drive letters before drive letters are assigned to any logical volumes on higher-numbered disks.

  • Once all logical volumes on all disks have been assigned drive letters, the remaining primary partitions on each disk with unassigned partitions are each assigned a drive letter.

Assume, for example, that a computer has one physical disk, partitioned into one primary partition labeled C: and an extended partition that contains two logical volumes labeled D: and E:. If you then add a second disk and create on it a primary partition and an extended partition that contains two logical volumes, drive letters are reassigned as follows: the primary partition on Disk 0 remains C:; the primary partition on Disk 1 becomes D:; the two logical volumes on Disk 0, formerly D: and E:, are reassigned as E: and F: respectively; and the two new logical volumes on Disk 1 are assigned G: and H:.

To avoid this reassignment of drive letters, do not create a primary partition on the new hard disk. Instead, partition the entire disk as an extended partition and create three logical volumes within that partition. This leaves the original C:, D:, and E: drive letter assignments unchanged, and assigns F:, G:, and H: to the three new logical volumes. The only drawback to partitioning a disk without a primary partition is that the disk can never be made bootable without being repartitioned to contain a primary partition and then reformatted.

Windows 2000/XP partitioning works differently because it uses both dynamic drive letter assignment and static drive letter assignment. Before you run Windows 2000/XP Disk Management (Computer ManagementStorageDisk Management) the first time, Windows uses dynamic drive letter assignment to assign drive letters as described earlier. Running Disk Management converts these dynamic drive letter assignments to static drive letter assignments, which means that adding a new disk no longer causes drive letters to be updated automatically. You can, however, use Disk Management to reassign static drive letters manually to volumes. To do so, display a list of volumes within Disk Management, display the context-sensitive menu by right-clicking the volume label for the volume you want to change, and choose the Change Drive Letter and Path option. You can assign any drive letter that is not already being used by a local or network drive to any partition. Don't change the drive letter assignment for the system partition, though, because many applications and services assume that the system partition is C:. Partitioning a hard disk

With only minor exceptions, partition tables and partitions are completely standard. This means, for example, that DOS can access a partition created by Windows NT and vice versa. You don't have to partition a disk using the native utility of the operating system that you plan to install on that partition. In broad terms, there are three ways to partition a disk: by using the Setup program provided by the operating system, which typically invokes its native partitioning utility; by using that partitioning utility manually; or by using a third-party partitioning utility such as PartitionMagic.

For better control, we partition disks manually rather than allowing the operating system Setup program to make partitions for us. Setup may make the same choices about partition sizes and types that we would have made ourselves, but then again it may not. You can use the fdisk utility from Windows 9X to partition a disk that will boot Windows 9X or Windows NT/2000/XP. To do so, boot a Windows Startup Disk that contains fdisk.exe (and format.com, which you'll need later) and take the following steps:

  1. At the DOS prompt, type fdisk and press Enter to start the partitioning utility. If you are using the original Windows 95 fdisk, the main menu appears immediately. If you are using the Windows 95 OSR2 or Windows 98 fdisk, a preliminary screen appears to notify you that your disk is larger than 512 MB and that this version of fdisk has enhanced support for large hard disks, which is incompatible with Windows NT 4.0 and Windows 95 and earlier. Choose Yes to use this hard disk support, or No if you plan to install one of these earlier operating systems.

    If you use the original Windows 95 fdisk (or choose not to enable large disk support with a later version of fdisk), the largest primary partition you can create is 2 GB. Although you can create an arbitrarily large extended partition, logical volumes within that extended partition can be no larger than 2 GB. Later Windows 9X versions up to and including Windows 98SE include a version of fdisk that does not recognize the full capacity of disks larger than 64 GB. Windows Me fdisk does not have this limitation. For further information, see document Q263044 at http://support.microsoft.com. You can download an updated version of fdisk for Windows 98 and 98SE from http://download.microsoft.com/download/Win98/Update/8266R/W98/EN-US/263044USA8.EXE.

  2. If there is only one physical disk installed, the main menu presents four choices. If more than one physical disk is installed, a fifth option appears that allows you to select the disk to be partitioned. Note that fdisk numbers the first physical disk as 1 rather than 0. If necessary, use option 5 to select the disk to be partitioned.

  3. Use option 4, Display partition information, to view existing partitions, if any. If necessary, use option 3, Delete partition or Logical DOS Drive, to remove existing partitions and free up space for new partitions. Deleting a partition destroys all data on that partition, so be sure that's really what you want to do before you do it.

  4. From the main menu, choose option 1, Create DOS partition or Logical DOS Drive, to begin partitioning the disk. fdisk displays the Create DOS Partition or Logical DOS Drive submenu with option 1, Create Primary DOS Partition; option 2, Create Extended DOS Partition; and option 3, Create Logical DOS Drive(s) in the Extended DOS Partition.

  5. To create a primary partition, choose option 1. By default, fdisk creates the largest primary partition it can in the available space, and marks that partition Active (or bootable). Depending on the size of the disk and whether you enabled large disk support, that partition may or may not occupy all available disk space. If you override the default to create a smaller primary partition, note that fdisk does not automatically mark that partition active. Return to the main menu and choose option 2, Set active partition, if you want that primary partition to be bootable.

  6. To create an extended partition for the remaining disk space (or for the entire disk if it has no primary partition), display the Create DOS Partition or Logical DOS Drive submenu and choose option 2, Create Extended DOS Partition. Allocate some or all of the available disk space to the extended partition (remember that you can have at most one extended partition on the disk) and then return to the Create DOS Partition or Logical DOS Drive submenu.

  7. Choose option 3, Create Logical DOS Drive(s) in the Extended DOS Partition, to create logical drives within the extended partition.

  8. Restart the computer to put the partitioning changes you have just made into effect.

Different versions of fdisk support some or all of these undocumented command-line switches:

fdisk /mbr

Re-creates the master boot record. This process is nondestructive on Windows systems (it will wipe out lilo on a Linux system) and sometimes can salvage a disk that no longer boots. Using fdisk /mbr replaces the MBR executable code but does not change partitioning data. Most partition sector viruses replace or modify MBR code, so using fdisk /mbr is a fast, easy way to rid a system of a partition sector virus.

fdisk /partn

Saves partitioning information to the file partsav.fil.

fdisk /q

Prevents fdisk from rebooting the system automatically upon exit.

fdisk <#>/pri :<size>

Creates primary partition of <size> MB on disk number <#>.

fdisk <#>/ext :<size>

Creates extended partition of <size> MB on disk number <#>.

fdisk <#>/log :<size>

Creates logical volume of <size> MB on disk number <#>.

The partitioning tool we use is PartitionMagic from PowerQuest (http://www.powerquest.com). In addition to standard partitioning functions, PartitionMagic does things no other partition utility we know of can do, including changing the sizes of partitions and converting a partition from one filesystem to another on the fly. If you frequently install or repartition hard disks, you need a copy of this utility in your toolkit.

14.6.3 Logical Formatting

After you partition the disk to create logical volumes, the next step is to format each volume, which creates the filesystem structure that will organize the data stored on that volume. This logical format writes information to disk that is needed by the filesystem, including:

  • A partition boot sector for the filesystem that occupies that partition. Don't confuse the partition boot sector with the MBR. Information contained in the MBR applies to the entire physical disk drive, while information contained in the partition boot sector applies only to the partition to which it is written.

  • The System ID Byte, which identifies the partition type and the filesystem used to format it.

  • Bad-sector mapping information.

  • Various information specific to the filesystem, including disk-free and disk-used data and the location of files and folders within the partition.

In the DOS/Windows 9X environment, the filesystem you create will be one of the following. FAT16

MS-DOS and the initial release of Windows 95 support only the FAT16 filesystem. FAT16 uses 16-bit addressing, which limits it to 65,536 discrete addresses. If FAT16 addressed individual sectors, it could access only (65,536 sectors x 512 bytes/sector = 33,554,432 bytes), or 32 MB. To get around this small limit, FAT addresses clusters rather than individual sectors. A cluster is a group of sectors. The number of sectors/cluster is always a power of two, is constant within a volume, and is determined automatically based on the size of that volume. Table 14-1 lists the cluster sizes that FAT16 uses for various partition sizes.

Table 14-1. The relationship of FAT16 partition size to cluster size

Partition size (MB)

Sectors / Cluster

Cluster size

0 - 32


512 bytes

33 - 64


1 KB

65 - 128


2 KB

129 - 255


4 KB

256 - 511


8 KB

512 - 1023


16 KB

1024 - 2047


32 KB

The downside to using clusters is that a cluster is the smallest addressable unit on the volume, so each file must occupy at least one cluster, and every file on average wastes half a cluster. This means, for example, that storing a 1-byte file on a FAT16 volume larger than 1 GB requires 32,768 bytes of disk space, and that storing a 32,769-byte file requires 65,536 bytes of disk space.

This allocated but unoccupied and unusable disk space is referred to as slack space. Large FAT16 volumes with many files have a lot of it. For example, a 1+ GB FAT16 volume with 15,000 files, each of which will average half a 32 KB cluster wasted, has (15,000 x 16,384), or 245,760,000 bytes of slack space.

FAT16 is the lingua franca of DOS/Windows operating systems. Any Microsoft operating system (and many non-Microsoft ones) can read and write FAT16 volumes. Windows 95 and later and Windows NT/2000 support slightly modified versions of FAT16 called VFAT, which support long filenames. FAT32

The hard limit of 2 GB on FAT16 volume size and the huge waste on large volumes led Microsoft to introduce the FAT32 filesystem with Windows 95 OSR2. Microsoft really should have called it FAT28 because four of the 32 address bits are reserved. Using 28-bit addressing, FAT32 addresses up to 268,435,456 sectors or clusters. Addressing individual sectors, FAT32 can access (268,435,456 sectors x 512 bytes/sector = 137,438,953,472 bytes), or 128 GB. In fact, though, FAT32 does not use individual sector addressing, simply because the overhead involved in managing so many small disk space allocation units would significantly degrade performance. Instead, FAT32 continues to use cluster-based addressing, but with much smaller cluster sizes than FAT16. Table 14-2 lists the cluster sizes that FAT32 uses for various partition sizes.

Table 14-2. The relationship of FAT32 partition size to cluster size

Partition size

Sectors / Cluster

Cluster size

< 256 MB


512 bytes

256 MB - 8 GB


4 KB

8 GB - 16 GB


8 KB

16 GB - 32 GB


16 KB

> 32 GB


32 KB

The smallest FAT32 partition you can create with the fdisk and format utilities is 512MB, unless you use undocumented command-line switches, which are undocumented for good reasons. You can convert FAT16 volumes smaller than 512 MB to FAT32 by using the Windows 98 conversion utility or PartitionMagic, but there is little reason to do so because FAT32 benefits only large volumes.

FAT32 also eliminates the limitation on root directory entries, which allows you to store as many files and directories in root as you wish. Standard DOS applications are still limited to accessing files no larger than 2 GB, and Win32 applications to accessing files no larger than 4 GB.

There are some drawbacks to using FAT32. First, because FAT32 uses more but smaller clusters, file access on FAT32 volumes should theoretically be slower than on FAT16 volumes. We tested this by creating same-size volumes formatted for FAT16 and FAT32, restoring a standard file set, defragmenting the volume, and then running various disk benchmark programs. In each case, the performance of the FAT32 volume was 3% to 5% slower than that of the FAT16 volume. With equal volume and cluster sizes, there is little discernible difference between FAT16 and FAT32.

A more important consideration for many people is that FAT32 is supported only by Windows 95 OSR 2.X, Windows 98, Windows 2000/XP, and Linux. This means that on a system that dual-boots Windows 9X using FAT32 volumes and Windows NT 4 using NTFS volumes, neither operating system can access the other's volumes. The shareware product WinImage (http://www.winimage.com) allows Windows NT 4 to open FAT32 partitions directly, as does the Sysinternals utility FAT32 (http://www.sysinternals.com/ntw2k/freeware/fat32.shtml).

Windows 95 OSR 2.X and Windows 98 include FAT32-aware versions of the fdisk, format, defrag, and scandisk utilities, which can be used for either FAT16 or FAT32 partitions. Note, however, that DriveSpace3 compression does not support FAT32 partitions. The same is true of third-party disk utilities that predate FAT32. Attempting to use them on a FAT32 volume will at best not work, and may destroy your data. Most pre-FAT32 applications can reside on a FAT32 partition without difficulty, as can their data. Note that some pre-FAT32 device drivers, particularly DOS block-mode drivers such as aspidisk.sys (used to access SCSI drives without enabling BIOS support) do not work properly from FAT32 partitions.

To further complicate matters, Microsoft created an enhanced form of FAT32 called FAT32X to allow FAT32 partitions to extend beyond 1,024 translated cylinders, which means any drive larger than 8 GB. FAT32X partitions use a different filesystem flag in the partition table, and manipulating FAT32X partitions requires using methods that differ from those used for FAT32. The fdisk and format utilities included with Windows 95 OSR 2.X and Windows 98 automatically create FAT32X partitions on drives larger than 8 GB, and most computer vendors supply systems with large drives already formatted as FAT32X. Other than the bundled DOS/Windows utilities, the only utility we know of that can manipulate FAT32X partitions is PartitionMagic 4.0+. NTFS

The native filesystem of Windows NT/2000/XP, NTFS places effectively no limits on the sizes of partitions, volumes, and files. NTFS is faster, more robust, and more secure than any FAT filesystem. If your computer runs Windows NT/2000/XP, there are only two reasons not to use NTFS. The first is that because only Windows NT/2000/XP (and, of course, Linux) can access NTFS volumes, using NTFS in a dual-boot environment means that the other operating system will not be able to access the NTFS volumes.

Second, there is a paucity of disk diagnosis and repair utilities available that are NTFS-aware. For a long time, Microsoft recommended creating a small FAT partition as the system partition from which NT would boot, and devoting the rest of the disk to one or more large NTFS partitions. Microsoft's thinking was that if there was a problem on the NTFS boot partition, you might still be able to get the system booted so that you could run a disk diagnostic utility. In practice, doing this doesn't accomplish much.

Although the Windows 2000/XP Recovery Console is a useful utility, it does not always allow you to recover from problems. For that reason, we generally configure our Windows 2000/XP systems to dual-boot two copies of the same operating system. By that, we mean that you should install your main Windows NT/2000/XP installation on one large NTFS volume, and install a second minimal Windows NT/2000/XP installation on another NTFS volume, ideally on a different physical drive. If the main installation fails to boot, you can boot to the other copy of Windows NT and use it to recover important data and configuration files from the main Windows NT installation before you attempt other recovery procedures. If all else fails, you can physically remove the unbootable drive from the problem system and install it as a secondary drive in a different Windows 2000/XP system, which may allow you to recover critical datafiles from the problem drive.

Three NTFS versions exist. NT 4 uses NTFS4. To add enhanced filesystem capabilities such as user quotas in Windows 2000, Microsoft upgraded NTFS4 to NTFS5. When XP was released, it included a minor variation of NTFS5, called NTFS5.1. As we found by sad experience when installing Windows 2000 in dual-boot mode on a system already running NT 4, Windows 2000 Setup converts any local NTFS4 volumes it finds to NTFS5, which means NT 4 can no longer read, write, or boot from those volumes unless SP4 or higher is installed. Even with SP4 or higher installed, NT 4 chkdsk cannot repair NTFS5 volumes. The only way we know to repair NTFS5 volumes under NT 4 is to use the third-party utility NTFSCHK (http://www.sysinternals.com/ntw2k/freeware/NTFSCHK.shtml). Formatting with Windows 9X

Windows 9X provides several ways to perform a logical format. You can use the fdisk and format utilities on a Windows 9X Startup Disk to partition and format a hard disk before installing Windows 9X. Once Windows 9X is installed, you can perform a logical format by right-clicking a volume in My Computer or Windows Explorer and choosing Format, or by using the command-line format utility. Command-line format uses the syntax format <drive:> /switches, where <drive:> is the drive letter assigned to that volume, and the available switches that pertain to hard disk formatting are as follows:

/v :<label>

Specifies the volume label.


Specifies that format should perform a "quick" format, which reinitializes the filesystem but does not perform an actual format. Using this is a fast way to delete all data on a drive.


Tests clusters that are currently marked bad.


Copies system files to the disk being formatted, making it bootable.

Unlike the Windows NT command-line format utility, the Windows 9X utility does nothing that you can't do using the graphical utilities, so there is little reason to use it. For flexibility, we prefer to use PartitionMagic to partition and format a drive before installing Windows 9X. Formatting with Windows 2000/XP

Windows 2000/XP provides several methods to perform a logical format. During Setup, Windows 2000/XP allows you to format existing or newly created volumes as either FAT or NTFS. Other than using a third-party utility such as PartitionMagic, this is the only method available to format an NTFS volume before Windows 2000/XP has been installed. The format process invoked during Setup is not very flexible, so we prefer to use PartitionMagic to create and format partitions before installing Windows 2000/XP.

Once a system is bootable under Windows 2000/XP, you can also perform a logical format on a disk by using the graphical Disk Management utility (Computer Management Storage Disk Management), by right-clicking a volume in My Computer or Windows Explorer and choosing Format, or by using the command-line format utility. The first two methods allow you to select all format options, but limit your choice of allocation unit (cluster) size. Command- line format provides complete flexibility in choosing cluster size, and uses the syntax format <drive:> /switches, where <drive:> is the drive letter assigned to that volume, and the available switches that pertain to hard disk formatting are as follows:

/fs :<file-system>

Where <file-system> specifies the type of the filesystem to be used, and may be FAT or NTFS.

/v :<label>

Specifies the volume label.


Specifies that format should perform a "quick" format, which reinitializes the filesystem but does not perform an actual format. Using this is a fast way to delete all data on a drive.


Specifies that files created on this volume will be compressed by default.

/a :<cluster-size>

Specifies the allocation unit size to be used for this volume:

  • NFTS supports <cluster-size> 512, 1024, 2048, 4096, 8192, 16K, 32K, or 64K, but compression is supported only on volumes that use <cluster-size> 4096 or smaller.

  • FAT supports <cluster-size> 8192, 16K, 32K, and 64K, all using 512-byte sectors, and 128K and 256K using nonstandard 1K and 2K sectors. FAT cluster sizes larger than 32K are unique to Windows NT and are not accessible by other operating systems that support FAT. FAT requires that the total number of clusters on a volume be less than 65,527. FAT32 requires that the total number of clusters on a volume be greater than 65,526 and less than 268,435,446.

In general, there are enough potential gotchas in using nonstandard cluster sizes that you should avoid using the command-line format utility to create nonstandard cluster sizes, and instead use the default cluster size proposed by one of the other Windows NT formatting methods.

Note that although Windows 2000 cannot format a partition greater than 30 GB using FAT32, it can use larger FAT32 partitions that were created with Windows 98/Me. Bizarrely, Microsoft states that this behavior is by design. For further information, see Knowledge Base articles Q277546 and Q184006. Windows XP also has some FAT32 limitations, which are discussed in articles Q314463 and Q310525. You can retrieve these articles from http://support.microsoft.com. Converting a FAT16 volume to FAT32

There are few circumstances in which converting an existing FAT16 volume to FAT32 makes sense, but there are a couple of ways to do it if the need arises.

To use the bundled Windows 98 utility, choose Start Programs Accessories System Tools Drive Converter (FAT32). Drive Converter converts FAT16 to FAT32, but not the converse, so be absolutely sure you want to take this step before you start the program. If you change your mind later, you'll have to repartition and reformat the drive to revert to FAT16. Converting to FAT32 (or attempting to do so) may cause the following problems:

You can no longer dual-boot the system between Windows 98 and Windows NT 4

Although the bulk of the Windows NT 4 files may reside on a separate partition, Windows NT boots from the FAT16 partition. If you convert that partition to FAT32, Windows NT will not be able to access it and cannot boot.

You can no longer uninstall Windows 98

Because Windows 98 is the only current version of Windows that can access FAT32 partitions, converting a volume to FAT32 means that you can run only Windows 98 or higher on that partition.

Some of your programs may no longer run

Most applications do not care whether they are running on a FAT16 or FAT32 volume. A few, however?notably, disk utilities?do not operate or operate improperly on a FAT32 volume. Drive Converter attempts to detect incompatible applications, and notifies you before doing the conversion if it finds such programs, but this feature cannot be depended upon absolutely to identify problem applications.

FAT32 incompatibilities with hardware suspend or hibernate features

FAT32 does not play nice with some computers whose BIOSs support hardware hibernation. Usually, the worst that happens is that the hibernation feature is turned off, although we have received a couple of anecdotal reports of systems that, after going to sleep, refuse to access the hard disk when they awaken.

FAT32 incompatibilities with disk compression methods used by earlier Windows versions

Older Windows drive compression methods, including DriveSpace3, are incompatible with FAT32 volumes. If you convert a volume to FAT32, you will no longer have the option of compressing it. A drive that is already compressed cannot be converted to FAT32.

PartitionMagic 4.0 or later can convert FAT16 to FAT32 and vice versa.