diskpart

ディスクのパーティションやボリュームを管理できます。

構文

diskpart [/s <スクリプト>] [/?]

バッチで実行する場合には、それを記述したファイルを/sオプションで読み込みます。

diskpart /s scriptname.txt

そのときバッチファイルを実行したパスを基準とするには、

diskpart /s %~dp0scriptname.txt

とします。たとえばそこに

select volume=2
assign letter=d
list volume

と記述すると、ボリューム「2」にドライブ文字「d」を割り当て、ボリュームの一覧が表示されます。

コマンド

コマンド 機能
ACTIVE 選択したパーティションをアクティブとしてマークする
ADD シンプル ボリュームにミラーを追加する
ASSIGN 選択したボリュームに、ドライブ文字またはマウント ポイントを割り当てる
ATTRIBUTES ボリュームまたはディスクの属性を操作する
ATTACH 仮想ディスク ファイルをアタッチする
AUTOMOUNT ベーシック ボリュームの自動マウントを有効または無効にする
BREAK ミラー セットを解除する
CLEAN ディスクから構成情報または情報のすべてを消去する
COMPACT ファイルの物理サイズの削減を試みます。
CONVERT 異なるディスク フォーマット間で変換する
CREATE ボリューム、パーティション、または仮想ディスクを作成する
DELETE オブジェクトを削除する
DETAIL オブジェクトに関する詳細を提供する
DETACH 仮想ディスク ファイルをデタッチする
EXIT DiskPartを終了する
EXTEND ボリュームを拡張する
EXPAND 仮想ディスクで使用可能な最大サイズを拡張する
FILESYSTEMS ボリューム上の現在のサポートされているファイル システムを表示する
FORMAT ボリュームまたはパーティションをフォーマットする
GPT 選択されたGPTパーティションに属性を割り当てる
HELP コマンドの一覧を表示する
IMPORT ディスク グループをインポートする
INACTIVE 選択されたパーティションを非アクティブとしてマークする
LIST オブジェクトの一覧を表示する
MERGE 子ディスクを親ディスクと結合する
ONLINE 現在オフラインとマークされているオブジェクトをオンラインにする
OFFLINE 現在オンラインとマークされているオブジェクトをオフラインにする
RECOVER 選択されたパック内のすべてのディスクを最新の状態に更新する無効なパック内のディスクの回復を試み、古いプレックスまたはパリティ データのあるミラーボリュームとRAID5ボリュームを再同期する
REM 何もしない。スクリプトをコメントアウトするために使う
REMOVE ドライブ文字の割り当て、またはマウント ポイントの割り当てを削除する
REPAIR 失敗したメンバーを持つRAID-5ボリュームを修復する
RESCAN コンピューターを再スキャンしてディスクとボリュームを調べる
RETAIN シンプル ボリュームに保持パーティションを置く
SAN 現在起動中のOSに対するSANポリシーを表示または設定する
SELECT オブジェクトにフォーカスを移動する
SETID パーティションの種類を変更する
SHRINK 選択されたボリュームを縮小する
UNIQUEID ディスクの GUID パーティション テーブル (GPT) 識別子またはマスター ブート レコード (MBR) 署名を表示または設定する
?

使用方法

管理者権限を持つユーザーでコマンドプロンプトを開き、diskpartで起動させます。

C:\>diskpart

Microsoft DiskPart バージョン 6.1.7601
Copyright (C) 1999-2008 Microsoft Corporation.
コンピューター: ComputerName

DISKPART>

終了させるにはexitとします。

DISKPART> exit

DiskPart を終了しています...

C:\>

ヘルプの確認

[? コマンド名]または[コマンド名]と入力すると、そのコマンドのヘルプが表示されます。

DISKPART> ? list

Microsoft DiskPart バージョン 6.1.7601

DISK        - ディスクの一覧を表示します。例: LIST DISK
PARTITION   - 選択したディスクのパーティションの一覧を表示します。
              例: LIST PARTITION
VOLUME      - ボリュームの一覧を表示します。例: LIST VOLUME
VDISK       - 仮想ディスクの一覧を表示します。

さらにパラメータを続けて記述することで、その意味も確認できます。

DISKPART> ? list disk

    ディスクの一覧を表示します。

構文:  LIST DISK

    ディスクの一覧と、そのディスクについての情報を表示します。たとえば、
    サイズ、使用可能な空き領域の容量、ディスクがベーシック ディスクかダイ
    ナミック ディスクか、ディスクが使用するのがマスター ブート レコード (MBR)
    か GUID パーティション テーブル (GPT) パーティション スタイルかなどです。
    アスタリスク (*) が付いているディスクにフォーカスがあります。

    [空き] 列に表示されるのは、ディスク上の空き領域の合計ではなく、
    ディスク上で使用可能な空き領域の残量です。たとえば、10 GB ディスク上に
    5 GB を占める 4 個のプライマリ パーティションがある場合、使用可能な
    空き領域はありません (追加のパーティションは作成できません)。または、
    10 GB のディスク上に 3 個のプライマリ パーティションと 1 個の拡張パーティ
    ションがあり、8 GB を占めているとします。3 GB の拡張パーティションには、
    2 GB の論理ドライブが設定されています。このディスクでは、1 GB のみが空き
    領域として表示されます。つまり、拡張パーティションには、1 GB の空き領域が
    あります。

例:

    LIST DISK

SELECT

指定のオブジェクトをフォーカスできます。

select disk
select partition
select volume
select vdisk
Select | Microsoft Learn

disk

SELECT DISK=<N>
SELECT DISK=SYSTEM
SELECT DISK=NEXT
SELECT DISK=<パス>
? select disk

たとえばインデックス番号0のディスクを選択するには、

DISKPART> select disk=0

とし、これが選択されたことは

DISKPART> list disk

として、一覧のそのディスクの名前にアスタリスク (*) が付いていることで確認できます。

LIST

list { disk | partition | volume | vdisk }
List1 | Microsoft Learn

disk

ディスクのインデックス番号は、ディスクが接続されているSATAのチャンネルとは一致しないことがあります。複数の SATA または RAID ディスクを搭載したコンピューターに Windows をインストールすると、ディスク ドライブの番号が SATA チャネル番号と一致しない可能性があります

DISKPART> list disk

  ディスク      状態           サイズ   空き   ダイナ GPT
  ###                                          ミック
  ------------  -------------  -------  -------  ---  ---
  ディスク 0    オンライン            32 GB  1024 KB

partition

パラメータにpartitionを指定したときに、

DISKPART> list partition

パーティションの一覧を表示するディスクが選択されていません。
ディスクを選択してから再実行してください。

としてディスクの選択を求められるときは、list diskでディスク インデックス番号を確認した上で、

DISKPART> select disk=0

ディスク 0 が選択されました。

としてディスクを選択し、再度listコマンドを実行します。Tech TIPS:Windowsのdiskpartコマンドでディスクのパーティションを操作する - @IT 打越浩幸ほか (2015/03/06)

DISKPART> list partition

  Partition ###  Type                Size     Offset
  -------------  ------------------  -------  -------
  Partition 1    プライマリ              500 MB  1024 KB
  Partition 2    プライマリ               31 GB   501 MB
  Partition 3    回復                 502 MB    31 GB

volume

DISKPART> list volume

  Volume ###  Ltr Label        Fs    Type        Size     Status     Info
  ----------  --- -----------  ----  ----------  -------  ---------  --------
  Volume 0     D                       CD-ROM          0 B  メディアなし
  Volume 1         システムで予約済み    NTFS   Partition    500 MB  正常         システム
  Volume 2     C                NTFS   Partition     31 GB  正常         ブート
  Volume 3                      NTFS   Partition    502 MB  正常         非表示

DETAIL

ディスクやパーティションの詳細を確認できます。

detail disk
detail partition
detail volume
detail vdisk
Detail | Microsoft Learn
DISKPART> detail partition

パーティション 2
種類         : de94bba4-06d1-4d40-a16a-bfd50179d6ac
隠し属性     : いいえ
必要         : はい
属性         : 0X8000000000000001
オフセット (バイト): 135266304

  Volume ###  Ltr Label        Fs    Type        Size     Status     Info
  ----------  --- -----------  ----  ----------  -------  ---------  --------
* Volume 0         回復           NTFS   Partition    450 MB  正常

ASSIGN

フォーカスしているボリュームに、ドライブ文字またはマウント ポイント (マウントされたフォルダのパス) を割り当てられます。

assign [{letter=<d> | mount=<path>}] [noerr]
Assign | Microsoft Learn
DISKPART> assign letter=x

LETTERとMOUNTを省略すると、次に有効なドライブ文字が割り当てられます。

割り当てたドライブ文字などは、REMOVEで削除できます。

DISKPART> remove letter=x

すでにドライブ文字などが割り当てられているボリュームに設定すると、それも追加して割り当てられます。よって変更する場合には、既存の割り当てを先に削除します。

DELETE

delete disk
delete partition
delete volume
Delete | Microsoft Learn
DISKPART> delete partition

仮想ディスク サービス エラー:
force protected パラメーターを設定しないと、保護されたパーティションは削除できません。

として削除に失敗するときには、overrideオプションを指定します。windows - Diskpart - Can't delete a partition without the force protected parameter set - Super User

DISKPART> delete partition override

DiskPart は選択されたパーティションを正常に削除しました。

CLEAN

フォーカスしているディスクから、すべてのパーティションとボリュームを削除できます。

clean [all]
Clean | Microsoft Learn

既定では最初と最後の1MBだけがゼロでクリアされます。allを指定すると、すべてがゼロでクリアされます。

このコマンドは、システム関連のボリュームを含むディスクには適用できません。

DISKPART> clean

仮想ディスク サービス エラー:
現在のブート ボリューム、システム ボリューム、ページ ファイル
ボリューム、クラッシュダンプ ボリューム、休止状態ボリューム上
では、クリーンな状態にできません。

適用された場合には、次のように出力されます。

DISKPART> clean

DiskPart はディスクを正常にクリーンな状態にしました。

DISKPART> list partition

このディスクには表示するパーティションがありません。