スラッシュドット    はてなブックマーク  Yahoo!ブックマークに登録  印刷
Windows TIPS
[System Environment]
  Windows TIPS TOPへ
Windows TIPS全リストへ
内容別分類一覧へ

ディスクのボリューム・サイズを縮小する

解説をスキップして操作方法を読む

デジタルアドバンテージ 打越 浩幸
2007/10/12
対象OS
Windows Vista
ディスク上のボリュームを縮小/分割して、新しいボリュームを作成したいことがある。
従来はサード・パーティ製のパーティション操作ツールを利用するのが一般的であったが、Windows Vistaにはボリューム・サイズの縮小機能が用意されている。
あらかじめボリュームの末尾に連続した空き領域を確保しておいてからコマンドを実行すると、その空き領域部分がボリュームから切り離されて未割り当て領域となるので、そこに新しくボリュームを作成する。

解説

 TIPS「ディスクのボリューム・サイズを拡張する」では、NTFSボリュームのサイズを拡大する方法を紹介したが、これとは逆に、ボリューム・サイズを縮小させたいこともある。例えば1台のディスク(もしくはパーティション)上に1つのボリュームしか存在しないが、これを分割して新しくデータ用ボリュームを作成したい場合や、Windows Vista(やWindows Server 2008)のBitLocker暗号化機能用に、別パーティションを用意したい場合などだ(BitLockerでは、2つのボリュームが必要となる)。

 新しいボリュームを作成するには、既存のボリューム・サイズを縮小してパーティション上に空き領域を作成する必要があるが(空き領域の中に、新たにパーティションとボリュームを作成する)、Windows OSの標準的なツールにはこの機能は用意されていない(拡大は先のTIPS参照)。

 しかしWindows Vista(およびWindows Server 2008)には既存ボリューム(パーティション)のサイズを縮小する機能(Shrink機能)が用意されており、サード・パーティ製ツールを利用しなくても、この作業が行える。本TIPSでは、この方法について解説する(Windows XP以前のOSには用意されていないが、Windows Vistaコンピュータにディスクを接続して作業することは可能)。

 ただしボリュームのサイズを縮小するためには、ボリュームの末尾に未使用領域が存在している必要がある。ボリュームの縮小では、この部分をボリュームから解放し、空き領域を作成するからだ。可能ならばボリュームの縮小前にデフラグを行って、可能な限り末尾の空き領域を連続するように、整理しておくべきである。

操作方法

 Windows Vista(および次期サーバOSであるWindows Server 2008)において、ボリューム・サイズを縮小するには、GUIベースのディスクの管理ツールを使う方法と、コマンド・プロンプト上でdiskpart.exeコマンドを利用する方法がある。

GUIベースのディスク管理ツールで縮小する

 まずGUIベースのディスク管理ツールでボリューム・サイズを縮小させる方法を紹介する。

 [スタート]メニューの[管理ツール]−[コンピュータの管理]を起動するか、[コンピュータ]アイコンを右クリックしてポップアップ・メニューから[管理]を選択する。そして起動した[コンピュータの管理]ツールの左側ペインで、[コンピュータの管理]−[記憶域]−[ディスクの管理]を選ぶ。そして縮小したいNTFSボリュームを右クリックし、ポップアップ・メニューから[ボリュームの圧縮]を選択する。なおメニュー表記では「圧縮」となっているので、ファイルやフォルダの圧縮機能(ドライブのルートに圧縮属性を付ける機能)を連想するかもしれないが、英語では「shrink(縮小する)」であり、「compress(圧縮する)」や「compact(最適化)」ではない。

ディスク管理ツールによるボリュームの圧縮
GUIベースの管理ツールでボリュームを圧縮するには、[コンピュータの管理]ツールを利用する。
これを選択する。
このディスク(38Gbytesのディスク)上のボリュームを縮小してみる。
圧縮前の元のNTFSボリューム。ディスク全体を利用して1つのボリューム(C:ドライブ)になっている。
ボリュームを選択して、これを実行する。

 [ボリュームの圧縮]を実行すると、次のようなダイアログが表示されるので、縮小させたいサイズを設定する。

縮小するボリュームのサイズの指定
ボリュームをいくら縮小するかを指定するダイアログ。サイズ縮小後のボリュームのサイズを指定するのではなく、いくら縮小するか(既存のボリュームの末尾からいくら解放するか)を指定する。
元のボリューム・サイズ。
縮小可能な最大サイズ。ボリュームの最後尾にある、連続した未使用領域のサイズ。デフラグしておくと、もっと大きくできる可能性がある。
いくら縮小するかという指定。
縮小後のボリューム・サイズ。

 は圧縮前のボリュームのサイズである。この例では全体で38Gbytesある。は、圧縮によって縮小できるサイズ、つまり、圧縮によって解放されるボリュームの最大サイズである。この例では11Gbytesとなっている。つまり38Gbytesのボリューム・サイズのうち、ボリュームの末尾に最大11Gbytesの連続空き領域が存在しているということである。実際には、この例では38Gbytesのうち15Gbytesしか使っていないので、最大で23Gbytes(=38−15Gbytes)まで解放できるはずであるが、空き領域が、ボリュームの末尾にすべて連続して存在しているわけではないので(フラグメントを起こしているので)、ここでは最大でも11Gbytesまでしか解放できない。ボリュームのデフラグを行ってから縮小すれば、もう少し解放するサイズを増やすことができる。

 は、このボリュームの末尾からいくら解放するかという指定である(最小で0bytes、最大でまで指定可能)。デフォルトでは解放可能な最大サイズ(=)となっている。は、縮小後のボリューム・サイズ(=)である。

 サイズの設定後、[圧縮]ボタンをクリックすると縮小作業(ボリューム末尾の解放作業)が始まり、しばらくすると完了する。完了後は例えば次のようになる。

ボリューム・サイズの圧縮後の状態
ボリューム・サイズを圧縮すると、元からあったボリュームのサイズが縮小される。ボリュームの末尾は空き領域(未割り当て領域)になるので、ここに新しいボリュームを作成できる。
縮小後のボリューム。元よりも小さくなっている。
元のボリュームの末尾から切り離され、解放された領域。未割り当て領域となるので、右クリックして新しくボリュームを作成できる。

diskpartコマンドによる縮小操作

 コマンド・プロンプトからボリューム・サイズを変更するには、diskpart.exeコマンドを起動し、shrinkコマンドを実行する。引数を付けずにshrinkコマンドを実行すると、可能な最大サイズまで解放される。End of Article

diskpartコマンドによる縮小操作の例
コマンド・プロンプト上でボリューム・サイズを縮小するにはdiskpartコマンドを起動し、shrinkコマンドを発行する。なお実行には管理者権限が必要である。コマンド・プロンプトでdiskpartを起動すると、UAC(ユーザー・アカウント制御)の許可ダイアログが表示されるので、[続行]をクリックして実行を許可する。もしくはこの例のように、管理者として実行したコマンド・プロンプト上で([コマンド プロンプト]を右クリックして[管理者として実行]を選択する)、diskpartを起動してもよい。
diskpartコマンドの起動。以後は、diskpartのサブコマンドを入力する。ヘルプは例えば「help shrink」などとすれば表示される。
まず縮小の対象となるボリュームの一覧を「list vol」コマンドで確認する。
ここでは37GbytesのC:ドライブのサイズを縮小させてみる。
selectコマンドで縮小対象のボリュームを指定する。
「shrink querymax」は縮小可能な最大サイズ(2つめの画面における[縮小可能な領域のサイズ])を求めるコマンド。この例では最大11Gbytesの領域をボリュームの末尾から解放し、未割り当て領域にできる。
ボリューム・サイズの縮小の実行。元のボリューム・サイズなどにも依存するが、数十秒から数分で終了する。
結果の確認。
37Gbytesあったボリュームが26Gbytesになっている。

関連記事(Windows Server Insider)
  Windows Server 2008の基礎知識―強化されたファイル・システムとネットワーク機能

この記事と関連性の高い別のWindows TIPS
ディスクのボリューム・サイズを拡張する
diskpartコマンドでディスクのパーティションを操作する
FAT→NTFSにファイル・システムを変換する
仮想ハードディスクのサイズを拡大する
ジャンクション機能を使ってディスク・ボリュームをマウントする
このリストは、(株)デジタルアドバンテージが開発した
自動関連記事探索システム Jigsaw(ジグソー) により自動抽出したものです。
generated by

「Windows TIPS」

ホワイトペーパーTechTargetジャパン

Windows Server Insider フォーラム 新着記事

@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

RSSフィード

スキルアップ/キャリアアップ(JOB@IT)

- PR -
- PR -

お勧め求人情報

キャリアアップ 〜JOB@IT