download diskpart_command_line_utility.zip (172 KB)
The Microsoft Windows 2000 DiskPart utility enables storage configuration from a script, remote session, or other command prompt. DiskPart augments the Disk Administrator graphical user interface.
DiskPart differs from many command-line utilities in that it does not operate in a single line mode. Instead, the utility is first invoked and then commands are read from standard IO. Commands can be directed to any disk, partition, or volume.
File Required
DiskPart_setup.exe
(192 KB file)
Each downloaded tool includes the files required to run the tool, a documentation file, and a readme file with general information about the downloaded tools and Resource Kit tools.
To download and install a tool
The downloaded file is a self-extracting executable (.exe) file. By running the file, you install the tool and documentation on your computer.
When you install a tool, you are prompted to choose an install directory. If
the Windows 2000 Resource Kit is installed, install the tool in the
Resource Kit directory to avoid an overly large system path and to ensure more
reliable upgrades. When you install the Resource Kit, the recommended directory
is
Important
The Resource Kit tools are not localized. They are written and tested in English only. Using these tools with a different language version of Windows 2000 might produce unpredictable results.
To uninstall a downloaded tool or the full Resource Kit
The SOFTWARE supplied in the Resource Kit Tools download site is not supported under any Microsoft standard support program or service. You can, however, report issues and bugs by sending e-mail to rkinput@microsoft.com. Microsoft will, at its sole discretion, address issues and bugs reported in this manner, and responses are not guaranteed.
The SOFTWARE (including instructions for its use and all printed and online documentation) is provided AS IS without warranty of any kind. Microsoft further disclaims all implied warranties including, without limitation, any implied warranties of merchantability or of fitness for a particular purpose. The entire risk arising out of the use or performance of the SOFTWARE and documentation remains with you.
In no event shall Microsoft, its authors, or anyone else involved in the creation, production, or delivery of the SOFTWARE be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the SOFTWARE or documentation, even if Microsoft has been advised of the possibility of such damages.
Article ID | : | 300415 |
Last Review | : | April 28, 2004 |
Revision | : | 1.3 |
![]() |
SUMMARY | |
![]() |
MORE INFORMATION |
Diskpart enables a superset of the actions that are supported by the Disk
Management snap-in. The Disk Management snap-in prohibits you from
inadvertently performing actions that may result in data loss. It is
recommended that you use the Diskpart utility cautiously because Diskpart
enables explicit control of partitions and volumes.
You can use Diskpart to convert a basic disk to a dynamic disk. The basic
disk can either be empty or contain either primary partitions or logical
drives. The basic disk can be a data disk or system or boot drive. The basic
disk cannot have fault-tolerant disk driver (FtDisk) sets such as stripes or
mirrors. To convert basic disks that have FtDisk driver sets, use Disk
Management on Windows 2000 or convert the disk before you upgrade to Windows
XP.
You can use Diskpart to convert a dynamic disk to a basic disk. You must
delete any dynamic volumes before the conversion process. It is not
recommended that you delete partitions on a dynamic disk except in emergency
situations. It is recommended that you delete all volumes on the drive, and
then convert the disk to basic. You must delete all dynamic data partitions.
Also, never mix the basic primary and dynamic partitions on the same drive.
If you do so, the computer may be unable to restart.
You can use Diskpart to create a partition at an explicit disk offset. The
Disk Management snap-in places the partition at the end of any occupied area
or on the first sufficiently large area. On master boot record (MBR) disks,
the partition offset and the size are rounded to preserve the required
cylinder alignment. Offsets are rounded to the closest valid value, and the
size is always rounded up to the next valid value. Diskpart does not assign
a drive letter to a newly created partition. Use the assign command
to assign either a mount point or a drive letter.
Diskpart follows the same policy as the snap-in. Dynamic disks can only be
created on fixed disks. You cannot convert removable disks, such as 1394 or
universal serial bus (USB) drives, to dynamic disks.
Diskpart permits certain partition deletion operations that are blocked by
the snap-in. For example, you can use Diskpart to delete MBR OEM partitions.
However, these partitions often contain files that are important to the
platform operation. Diskpart blocks the deletion of the current system,
boot, or paging volumes and partitions. Also, Diskpart blocks deletion of
the partitions that underlie dynamic disks.
You cannot use Diskpart to create a partition on removable media. Windows
supports at most one MBR partition on removable media. If the media is
manufactured with an MBR, that MBR cannot be altered, but the MBR is
followed even if multiple partitions or logical drives are configured. If
the media is manufactured without an MBR, the media is treated as a "superfloppy"
and no partition structure is written to the media.
The drive letter for a removable drive is associated with the drive, and not
with the media. You can use Diskpart to change the drive letter.
Diskpart causes disk signatures, GUID partition table (GPT) disk globally
unique identifiers (GUIDs), and GPT partition GUIDs to be generated. You
cannot explicitly set these items by using Diskpart.
The Diskpart utility (like the snap-in) includes support for the new Itanium
disk partition scheme called GPT. You cannot use GPT disks on any x86-based
Windows XP-based or Windows 2000-based computers. Diskpart enables the
conversion of GPT partitioning to MBR partitioning only for empty disks.
You can use Diskpart to delete missing dynamic disks. Dynamic disks contain
a shared database; all of the dynamic disks on a computer have knowledge of
all other dynamic disks on that computer. When dynamic disks are moved, the
original computer considers theses disks as "missing".
Drive letters are not automatically assigned when you use Diskpart. To
ensure that a given partition or volume has a drive letter, you must
explicitly assign a drive letter. You can either assign the drive letter or
allow the next available drive letter to be allocated.
Most Diskpart commands operate on a specific target disk, partition, or
volume. The targeted object has "focus." Focus simplifies the common
configuration task in which you create multiple partitions on the same disk.
An object is put into focus by the select command. All Commands
except for list, help, rem, exit, or help
require focus.
Use the select command to explicitly change the focus. To implicitly
change the focus, use a command such as create. You must set the disk
focus before you manage a basic disk. On basic disks, the partition focus
and volume focus are the same. If you change the focus on one item, you
change the focus on the other. On dynamic volumes, only the volume focus is
important because the previous partition focus is always lost and the disk
focus is only important for simple volumes.
Consider the following examples of a computer that has two disks:
• | Each disk contains two primary partitions. The first disk contains the C and D partitions; the second disk contains the E and F partitions. You must set the disk focus to disk 1 before you set the partition focus to either the C or D partitions. You can set the volume focus to either the C, D, E, or F partitions at any time. In this example, if you set the volume focus to the C or D partition, the disk focus does not change; however, if you set the volume focus to the E or F partitions, the disk focus may be moved to the other disk. |
• | Each disk is dynamic and contains a simple volume and free space. The first disk contains the C partition, and the second disk contains the E partitions. You must set the disk focus before you add a simple volume to the first disk. To extend the C partition, you need to set only the volume focus. Similarly, to add a mirror to the E partition, you need to set only the volume focus to the E partition. If you create a simple volume or extend an existing volume onto the same disk, you do not change the disk focus. If you add a mirror, create a stripe set, or extend an existing volume onto a different disk, you can cause the disk focus to be lost. |
Diskpart supports scripted operations. To initiate a Diskpart script, use
the diskpart /s script.txt command. You can
script Diskpart on Windows XP, Windows 2000, Remote Installation Services (RIS)
unattended install environments, or on the Windows Preinstall Environment
(PE) for OEMs.
By default, Diskpart can quit command processing and return an error code if
there is a problem in the script. To continue to run a script in this
scenario, include the noerr parameter on the command. This parameter
allows you to use a single script to delete all partitions on all data
drives, regardless of the total number of drives. However, not all commands
support the noerr parameter. Even if you use the noerr
parameter, an error is always returned on command syntax errors.
The following list describes the error codes for Diskpart:
• | 0 - No error occurred. The entire script ran without failure. |
• | 1 - A fatal exception occurred. There may be a serious problem. |
• | 2 - The arguments specified on a Diskpart command line were incorrect. |
• | 3 - Diskpart was unable to open the specified script or output file. |
• | 4 - One of the services Diskpart uses returned a failure. |
• | 5 - A command syntax error occurred. The script failed because an object was improperly selected or was invalid for use with that command. |
After you run Diskpart, the Diskpart version and current computer name are displayed.
select
Use the select command to set the focus to the specified target. To
obtain a list of focus types, leave the Type field blank. If you do
not specify an identification (ID) number, the current focus object is
displayed.
select disk[=n]
Use the select disk command to set the focus to the disk that has the
specified Windows NT disk number. If you do not specify a disk number, the
command displays the current in-focus disk.
select partition[=n/l]
Use the select partition command to set the focus to the specified
partition. If you do not specify a partition, the current in-focus partition
is displayed.
On basic disks, you can specify the partition by either index, drive letter,
or mount point. You can only specify the partition by index on dynamic disks.
select volume[=n/l]
Use the select volume command to set the focus to the specified
volume. If you do not specify a volume, the command displays the current
in-focus volume.
You can specify the volume by either index, drive letter, or mount point
path. On a basic disk, if you select a volume, the corresponding partition
is put in focus.
Use the list command to display a summary. To display more
information, set the focus, and then use the detail command.
detail disk
Use the detail disk command to obtain the detailed information about
the current in-focus disk, for example:
Diskpart> select disk 3 Disk 3 is now the selected disk. Diskpart> detail disk Maxtor 90432D2 Disk ID: F549D151 Type : IDE Bus : 0 Target : 0 LUN ID : 0 Volume ### Ltr Label Fs Type Size Status Info ---------- --- ----------- ----- ---------------- ------- --------- -------- Volume 0 F My RAID Set NTFS RAID-5 4096 MB Healthy Volume 1 G FATSTRIPE FAT32 Stripe 6144 MB Healthy Volume 2 H My Mirror NTFS Mirror 2048 MB Healthy Volume 3 I My Span NTFS Spanned 9 GB Healthy
detail partition
Use the detail partition command to obtain detailed information about
the current in-focus partition;
Diskpart> select disk 0 Disk 0 is now the selected disk. Diskpart> select partition 1 Partition 1 is now the selected partition. Diskpart> detail partition Partition 0 Type : 07 Hidden: No Active: Yes Volume ### Ltr Label Fs Type Size Status Info ---------- --- ----------- ----- ---------- ------- --------- -------- * Volume 2 C NTFS Partition 4110 MB Healthy System
detail volume
Use the detail volume command to obtain the detailed information
about the current in-focus volume, for example:
Diskpart> select volume 1 Volume 1 is now the selected volume. Diskpart> detail volume Disk ### Status Size Free Dyn Gpt -------- ---------- ------- ------- --- --- Disk 1 Online 8 GB 0 B * Disk 2 Online 8 GB 0 B * Disk 3 Online 8 GB 0 B *
list disk
Use the list disk command to obtain summary information about each
disk in the computer. The disk with the asterisk (*) has the current focus.
Only fixed disks (for example, integrated device electronics [IDE] or small
computer system interface [SCSI]) or removable disk (for example, 1394 or
USB) are listed. The removable drives are not displayed.
Diskpart> select disk 3 Disk 3 is now the selected disk. Diskpart> list disk Disk ### Status Size Free Dyn Gpt -------- ---------- ------- ------- --- --- Disk 0 Online 4118 MB 0 B Disk 1 Online 8 GB 4002 MB * Disk 2 Online 8 GB 0 B * * Disk 3 Online 8 GB 0 B * Disk M0 Missing 8 GB 0 B *
list partition
Use the list partition command to obtain information about each
partition on the in-focus disk, for example:
Diskpart> select disk 4 Disk 4 is now the selected disk. Diskpart> list partition Partition ### Type Size Offset ------------- ---------------- ------- ------- Partition 1 Primary 4094 MB 31 KB Partition 2 Extended 4581 MB 4094 MB Partition 3 Logical 2047 MB 4094 MB Partition 4 Logical 2533 MB 6142 MB All partitions (regardless of type) are displayed.
list volume
Use the list volume command to obtain information about each volume
in the computer, for example:
Diskpart> list volume Volume ### Ltr Label Fs Type Size Status Info ---------- --- ----------- ----- ---------------- ------- ---------- -------- Volume 0 F My RAID Set NTFS RAID-5 4096 MB Healthy Volume 1 G FATSTRIPE FAT32 Stripe 6144 MB Failed Volume 2 H My Mirror NTFS Mirror 2048 MB Healthy Volume 3 I My Span NTFS Spanned 9 GB Healthy Volume 4 D CDFS CD-ROM 0 B Volume 5 C NTFS Partition 2047 MB Healthy System Volume 6 E NTFS Partition 2063 MB Healthy Boot Volume 7 J My Primary NTFS Partition 4095 MB Healthy Volume 8 K My Logical NTFS Partition 2047 MB Healthy Volume 9 L My Next Log NTFS Partition 2534 MB Healthy
This section describes commands that you can use to create and delete
partitions and to assign drive letters and mount points. The commands in
this section apply only to basic disks. Refer to the following sections for
commands that are valid on dynamic disks or for commands that you can use to
convert basic disk to dynamic disks.
On all MBR disks, the size or offset parameters are rounded up
to cylinder alignment. On GPT disks, the size or offset
parameters are rounded to sector alignment. If an offset parameter is
not specified, the partition is placed in the first unoccupied contiguous
disk extent that is large enough. If a size parameter is not listed,
the partition may be extended to occupy the determined disk extent up to the
size of the entire disk.
After the new disks are first discovered, they are assumed to be MBR disks.
You must explicitly convert a disk to GPT before you attempt to create a GPT
partition. It is recommended that you create the MSR as the first partition
on every data disk and the second partition (after the ESP) on any system or
boot disk. After you convert from MBR to GPT, the MSR partition is
automatically created on the disk.
After you create any new partition, the newly created partition gains the
partition focus. After you delete any partition, the partition focus is
lost. The disk focus remains unchanged in all cases.
active
Use the active command to set the current in-focus partition to "active."
This setting informs the firmware that the partition is a valid system
partition. Diskpart does not validate the partition contents.
NOTE: If you use this command, the computer may be unable to restart.
assign [[letter=l]/[mount=path]] [noerr]
Use the assign command to assign a letter or mount point to the
current in-focus partition. If you do not specify a drive letter, the next
available drive letter is assigned. If the letter or mount point is already
in use, an error is generated unless you use the noerr parameter.
You can use this command to change the drive letter that is associated with
a removable drive.
The drive letter assignment is blocked on the system, boot, or paging
volumes. This command cannot be used to assign a drive letter to an OEM
partition or any GPT partition, other than the Msdata partition.
create partition primary [size=n] [offset=n] [id=byte/guid] [noerr]
Use the create partition primary command to create a primary
partition of length size and a starting address offset on the current drive.
If an ID byte is not specified on an MBR disk, this command creates a
partition with type "0x6." You can use the ID parameter to specify
the partition type. There is no validity or other checking of the ID byte.
If you do not specify an ID GUID on a GPT disk, this command creates an
Msdata partition. You can use the ID parameter to specify any GUID.
There is no validity, duplication, or other checking of the GUID. The
partition instance GUID is automatically generated.
MBR and GPT partitions are created so that Windows does not automatically
allocate drive letters. You must explicitly assign a drive letter.
create partition extended [size=n] [offset=n] [noerr]
Use the create partition extended command to create an extended
partition of length size and starting address offset on the current drive.
The drive must be an MBR disk.
After the partition is created, the new extended partition gains the focus.
You can create only one extended partition. You can create logical drives
only after you create an extended partition.
create partition logical [size=n] [offset=n] [noerr]
Use the create partition logical command to create a logical drive of
length size and starting address offset in an existing extended partition on
the current disk. The drive must be an MBR disk.
If an offset is not listed, the logical drive is placed in the first
unoccupied contiguous disk extent in the extended partition that is large
enough. If a size is not listed, the partition may be extended to occupy the
entire extended partition.
After you create the partition, the logical drive gains the partition focus.
create partition msr [size=n] [offset=n] [noerr]
The create partition msr command is the equivalent of creating the
partition with the MSR GUID E3C9E316-0B5C-4DB8-817D-F92DF00215AE.
create partition esp [size=n] [offset=n] [noerr]
The create partition esp command is the equivalent of creating the
partition with ESP GUID C12A7328-F81F-11D2-BA4B-00A0C93EC93B.
delete partition [noerr] [override]
Use the delete partition command to delete the current in-focus
partition.
Diskpart blocks the deletion of the current system, boot, or paging volume.
To delete either an ESP, MSR, or a known OEM partition, you must specify the
override parameter.
extend [size=n][noerr]
Use the extend command to cause the current in-focus volume to be
extended into contiguous unallocated space. The unallocated space must
follow (it must be of higher sector offset than) the in-focus partition. The
intended use of this command is to grow an existing basic data partition
into newly created space on an extended hardware Raid logical unit number (LUN).
If the partition had been previously formatted with the NTFS file system,
the file system is automatically extended to occupy the larger partition,
and data loss does not occur. If the partition had been previously formatted
with any file system format other than NTFS, the command is unsuccessful and
does not change the partition.
Diskpart blocks the extension of only the current system or boot partition.
remove [[letter=l]/[mount=path]/[all]] [noerr]
Use the remove command to remove a letter or mount point from the
current in-focus partition. If you specify the all parameter, all of
the current drive letters and mount points are removed. If you do not
specify a letter or mount point, the drive letter is removed.
Use this command to change the drive letter that is associated with a
removable drive.
The drive letter removal is blocked on the system, boot, or paging volumes.
You cannot use this command to remove a drive letter to an OEM partition,
any GPT partition with an unrecognized GUID, or any of the special non-data,
GPT partitions, such as, the ESP partition.
You can use the commands that are described in this section to create and
delete volumes, repair fault tolerant volumes, and import disks.
The size parameters are always rounded up to MB alignment. You cannot
specify an explicit offset. The volume is always placed in the first
unoccupied contiguous disk extent that is large enough. If a size is not
listed, the largest possible volume is created.
After a volume is created, the volume focus is put on the newly created
volume. The current disk focus is lost if the volume spans the disks. The
volume focus is lost if a volume is deleted. If there had been a valid disk
focus before you deleted the volume, that disk focus remains.
NOTE: Diskpart forces the creation of an MSR partition on any empty
disk when that disk is converted to a dynamic or GPT disk.
active
Use the active command to set the current in-focus volume as "active."
This setting informs the firmware that the partition is a valid system
partition. Diskpart verifies only that the volume is capable of containing
an operating system bootable image, but the utility does not validate the
partition contents. If you use this command, the computer may not be able to
restart.
add disk=n [noerr]
Use the add command to add a mirror to the current in-focus volume on
the specified disk. Only two mirror plexes are supported. The current
in-focus volume must be a simple volume.
assign [[letter=l]/[mount=path]] [noerr]
Use the assign command to assign a letter or mount point to the
current in-focus volume. If you do not specify a drive letter, the next
available drive letter is assigned. If the letter or mount point is already
in use, an error is generated unless you specify the noerr parameter.
The drive letter assignment is blocked on the system, boot, or paging
volumes.
break disk=n [nokeep] [noerr]
Use the break command to break the current in-focus mirror.
By default, the contents of both mirror plexes are retained because both
plexes become simple volumes. If you specify the nokeep parameter,
only the specified plex is retained, the other plex is removed and converted
to free space.
The original volume retains any and all drive letters or mount points. If
the plex is not kept, the focus remains on the retained simple volume on the
specified disk. Otherwise, the focus is changed to the specified retained
plex on the specified disk. The plex becomes a simple volume; however, a
drive letter is not assigned to the new volume.
create volume simple [size=n] [disk=n] [noerr]
Use the create volume simple command to create a simple volume of
length size on the specified disk.
If you do not specify a size, the new volume can take up the remaining
contiguous free space on the disk. If you do not specify a disk, the current
in-focus disk is used.
After the volume is created, the disk focus is given to the targeted disk.
create volume stripe [size=n] disk=n[,n[,...]] [noerr]
Use the create volume stripe command to create a stripe set volume on
the specified disks. The total size of the stripe volume is the size
multiplied by (*) the number of disks.
If you do not specify a size, the largest possible stripe volume is created.
The disk with the smallest available contiguous free space is determined.
The size of that free space determines the size for the stripe volume. The
same size is allocated on each disk.
create volume raid [size=n] disk=n[,n[,...]] [noerr]
Use the create volume raid command to create a Raid-5 set volume on
the specified disks. An amount of space that is equal to "size" is allocated
on each disk.
If you do not specify a size, the largest possible Raid 5 volume is created.
The disk with the smallest available contiguous free space is determined.
The size of that free space determines the size for the Raid 5 volume and
the same size is allocated from each disk. The actual usable size of the
volume is less than the size multiplied by the number of disks, because some
of the space is used for the parity.
delete disk [noerr][override]
Use the delete disk command to delete a missing dynamic disk from the
disk list.
If you do not specify the override parameter, all of the simple
volumes that are contained on the disk are deleted and any mirror plexes are
removed. If the disk contributes to a Raid 5 volume, the command is
unsuccessful.
delete partition [noerr] [override]
Use the delete partition command to delete the current in-focus
partition.
Diskpart blocks the deletion of any partitions that are used to contain
existing online dynamic volumes. Those volumes must be deleted and the disk
converted to basic. To delete an ESP, MSR, or known OEM partition, specify
the override parameter.
You can delete partitions from dynamic disks, but you cannot create them.
For example, you can delete an unrecognized GPT partition on a dynamic GPT
disk. If you delete a partition, the free space does not become available.
You can use this command to reclaim the space on a corrupted offline dynamic
disk in an emergency situation in which you cannot use the clean
command.
delete volume [noerr]
Use the delete volume command to delete the current in-focus volume.
After you use this command, all data is lost.
extend disk=n [size=n] [noerr]
Use the extend command to extend the current simple or the extended
volume onto the specified disk. The extend command only works with
NTFS volumes.
If you do not specify a size, the volume can occupy all of the free space on
the specified disk. Any existing disk focus is lost.
import [noerr]
Use the import command to import all of the disks from a foreign disk
group.
If you set the focus on any disk in the foreign disk group, you can import
all disks in the group. After you run this command, any existing volume or
disk focus is lost.
online [noerr]
Use the online command to bring a disk or volume that had previously
been taken offline back online. A change in focus does not occur if you use
this command.
remove [[letter=l]/[mount=path]/[all]] [noerr]
Use the remove command to remove a letter or mount point from the
current in-focus volume. If you use the all parameter, all of the
current drive letters and mount points are removed. If you do not specify a
letter or mount point, the path that is encountered first is removed.
The drive letter removal is blocked on the system, boot, or paging volumes.
retain
Use the retain command to prepare a dynamic simple volume to be used
as a boot or system volume.
If you use the retain command on an x86-based computer, an MBR
partition on the dynamic simple volume is created with focus. To create an
MBR partition, the dynamic simple volume must start at a cylinder aligned
offset and be an integral number of cylinders in size.
If you use the retain command on an Itanium-based computer, the
retain command creates a GPT partition on the dynamic simple volume with
focus.
convert mbr [noerr]
Use the convert mbr command to set the partitioning style of the
current disk to MBR. The disk may be a basic disk or a dynamic disk but the
disk must not contain any valid data partitions or volumes.
convert gpt [noerr]
Use the convert gpt command to set the partitioning style of the
current disk to GPT. The disk may be a basic or a dynamic disk but it must
not contain any valid data partitions or volumes. This command is valid only
on Itanium-based computers; it may be unsuccessful on x-86-based computers.
convert dynamic [noerr]
Use the convert dynamic command to change a basic disk into a dynamic
disk. The disk may contain valid data partitions.
convert basic [noerr]
Use the convert basic command to change an empty dynamic disk to
basic.
exit
Use the exit command to stop Diskpart and return control to the
operating system.
clean [all]
Use the clean command to remove partition or volume formatting from
the current in-focus disk by zeroing sectors. By default, only the MBR or
GPT partitioning information and any hidden sector information on MBR disks
is overwritten. If you specify the all parameter, each and every
sector can be zeroed, and all data that is contained on the drive can be
deleted.
rem [...]
The rem command does nothing, and you can use it to comment script
files.
rescan
Use the rescan command to rescan all I/O buses and cause any new
disks that have been added to the computer to be discovered.
help
Use the help command to display a list of all commands.
For additional information on the Diskpart utility, search on Diskpart
in the Help and Support Center in Windows XP.
• | Microsoft Windows XP Home Edition |
• | Microsoft Windows XP Professional Edition |
• | Microsoft Windows XP 64-Bit Edition |
2004-10-02 fm:
http://www.microsoft.com/windows2000/techinfo/reskit/tools/new/diskpart-o.asp
http://support.microsoft.com/kb/300415/EN-US/
[ top ]