2014/05/26

PowerShell ストレージ調査に役立つコマンドレットとスクリプト~Get-PhysicalDiskやGet-VirtualDisk


PowerShellを使ってストレージ情報(ドライブレターや容量等)を取得するためのコマンドレットとスクリプトをメモ。Windows Server 8 / 2012からの新機能「記憶域プール」に参加している物理ディスクを調べる方法もあります。
なお、Windows Server 2012 R2 Essentialsは、
  • サーバ・クライアント監視機能(状態レポートを含む)
  • 専用コマンドレット(Get-WssDiskやGet-WssDrive、Get-WssDriveInUse)
  • S.M.A.R.T情報を表示・通知するアドオン(Home Server SMART 2013)
が利用できるサーバOSのため、ストレージ調査の手間暇が格段に軽減されますよ!

基本となるコマンドレット

各コマンドレットをただ実行しても表示される情報は少ないので、全パラメータを調べたい場合は、各コマンドレットにFormat-List コマンドレットをパイプします。
Get-Volume | Format-List *

ストレージ調査

何かがあった時にすぐに使えるスクリプトをメモしておきます。
ドライブレター+ボリューム容量+空き容量を確認する
Get-Volume | Select-Object DriveLetter,FileSystemLabel,@{Label='Capacity';Expression={"{0:N2}GB" -f  ($_.Size/1GB)}},@{Label='FreeSpace';Expression={"{0:N2}GB" -f ($_.SizeRemaining/1GB)}} | Sort-Object DriveLetter
image
物理ディスクを確認する
Get-PhysicalDisk | Select-Object FriendlyName,@{Label='Capacity';Expression={"{0:N2}GB" -f ($_.Size/1GB)}},@{Label='AllocatedSize';Expression={"{0:N2}GB" -f ($_.AllocatedSize/1GB)}} | Sort-Object friendlyname
image
記憶域プールに参加している物理ディスクのみを表示する
Get-VirtualDisk | Get-PhysicalDisk | Select-Object FriendlyName,@{Label='Capacity';Expression={"{0:N2}GB" -f ($_.Size/1GB)}},@{Label='AllocatedSize';Expression={"{0:N2}GB" -f ($_.AllocatedSize/1GB)}} | Sort-Object friendlyname
image
物理ディスクの健康状態を確認する
Get-PhysicalDisk -FriendlyName ディスク番号 | Get-StorageReliabilityCounter
パラメータの中でも、
  • Temperature
  • ReadErrorsXXX
  • WriteErrosXXX
  • WriteLatencyMax
の4点を注視すればいいのかな、と思っています。
スポンサーリンク

スポンサーリンク