記憶域スペースでファイル削除した場合にディスクの使用領域を解放する

Windows Server 2012 R2

記憶域スペースでは、物理ディスク内の領域を256MB毎に区切り(スラブ)、それらを仮想的に1つにまとめ(プロビジョニングスラブ)、記憶域プールとして1つの物理ディスクであるかのようにみせています。

(仮想ディスクとしての)記憶域スペースを作成する際に、仮想(シン)プロビジョニングで作成すると、記憶域プールの空き領域にかかわらず自由なサイズの仮想ディスクを作成し、必要な時だけプロビジョニングスラブを消費します。

サーバーマネージャーの仮想ディスク欄における、[容量]と[割り当て済み]の2つのサイズが異なるのが仮想プロビジョニングで、[割り当て済み]欄に記載されているサイズが、記憶域プールのプロビジョニングスラブから実際に割り当てられている領域になります。

131123001

仮想(シン)プロビジョニングでは、一度記憶域プールから割り当てられたプロビジョニングスラブは、仮想ディスクに保存したファイルを削除したとしても、即座には解放せず、定期的(デフォルトでは毎週)に実行される[ドライブの最適化]の中で解放されます。

仮に、仮想ディスク上のファイルを大量に削除したため、対象の領域を他の仮想ディスクで使用できるように即座に解放したい場合は、以下の手順を実行します。

なお、以下の手順を実行する前にあらかじめ、ごみ箱を空にします(ごみ箱を空にするとそのファイルは復元できません。逆に、ごみ箱に残っていると、以下の手順を実行してもディスク領域は解放されません)。

プロビジョニングスラブを解放する方法

サーバーマネージャーを使用する場合

  1. サーバーマネージャーから、ツール>ドライブのデフラグと最適化を押下します。131123001[5]
  2. 解放したいドライブを選択して、[最適化]を押下します。
    131123002

PowerShellを使用する方法

  1. PowerShellを管理者権限で起動します。
  2. 以下のコマンドレットを実行します。
    Optimize-Volume –DriveLetter <対象のボリュームのドライブレター> -SlabConsolidate -Verbose 
    131123005[5]

        Optimize-Volume コマンドでは、ドライブレターだけ指定しその他のパラメーターを指定しなかった場合、対象のディスクの種類に応じて適切なオプションを実行してくれますので、ドライブレターだけの指定でも構いません。

タイトルとURLをコピーしました