Get-PartitionSupportedSizeでUnspecified Errorが出てしまう場合の対処法

VHDXのボリュームを拡張する際に,PowerShellのコマンドから行いたい場合があります。

VHDXのリサイズまでは問題なく通るのですが,パーティションサイズをMaxまで拡張する段階で,Get-PartitionSupportedSizeのコマンドがUnspecified Errorを吐いてしまいます。

例えば,以下のようなコマンドを流すと,

$DiskMount = Mount-VHD -Path $VHDXFile -NoDriveLetter -PassThru | Get-Disk | Get-Partition
$PartitionSize = $DiskMount | Get-PartitionSupportedSize

次のようなエラーが返ってきます。

Get-PartitionSupportedSize : Unspecified Error
Extended information: The service cannot be started, either because it is disabled or because it has no enabled devices associated with it.
At C:\Users\username\Desktop\UPD_expansion.ps1:8 char:26
+ $PartitionSize = $DiskMount | Get-PartitionSupportedSize
+                          ~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (StorageWMI:ROOT/Microsoft/.../MSFT_Partition) [Get-PartitionSupportedSize], CimException
    + FullyQualifiedErrorId : StorageWMI 2,Get-PartitionSupportedSize

この場合,エラーの原因には何が考えられるでしょうか。

ディスクデフラグのサービスが無効化されている

Get-PartitionSupportedSizeでUnspecified Errorが出てしまう原因の多くは,ディスクデフラグのサービスが無効化されていることによります。

それで,defragsvcを有効化してやりましょう。

Windows Serverにおいては,Optimize drivesという表示名のサービスです。

このOptimize drives (defragsvc)がDisabledになっていると,上述のエラーが出てしまいますので,Manualに変更しましょう。サービスを起動させる必要はありません。

これで,Get-PartitionSupportedSizeを再び流すと,エラーが出なくなるか,別のエラーが出るようになりますのでトラブルシューティングを継続します。

以上,VHDXのサイズを操作する際に,Get-PartitionSupportedSizeでUnspecified Errorが出てしまう場合の対処法でした。

コメント