【 Get-Volume 】コマンドレット――ディスク上のボリューム情報を取得するWindows PowerShell基本Tips(100)

本連載は、PowerShellコマンドレットについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は「Get-Volume」コマンドレットを解説します。

» 2024年04月08日 05時00分 公開
[後藤諭史@IT]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

「Windows PowerShell基本Tips」のインデックス

連載目次

 本連載では、Windows PowerShellの基本的なコマンドレットについて、基本的な書式からオプション、具体的な実行例までを分かりやすく紹介していきます。今回は、コンピュータに接続されたディスク上のボリューム情報を取得する「Get-Volume」コマンドレットです。

Get-Volumeコマンドレットとは?

 本連載第94回の「Get-Partition」コマンドレットでは、コンピュータに接続されたディスクにデータを書き込む際には「ディスク上に1つ、もしくは複数の論理区画を設定し、OSで認識可能なファイルシステムにフォーマットする必要がある」と解説しました。

 Get-Partitionコマンドレットは「ディスク上に設定された論理区画」の情報を取得できるのに対し、今回紹介するGet-Volumeコマンドレットは「OSで認識可能なファイルシステム」を持つ「アクセス可能な記憶領域」の情報を取得できます。

 パーティションとボリュームの関係をざっくりと説明すると、コンピュータに接続されたディスクには論理区画(=パーティション)があり、その中にボリュームというOSが認識可能な記憶領域が存在する、ということになります。

 具体的な例を挙げると、あるコンピュータのディスク設定を「ディスクの管理」ツールから参照したものが画面1になります。このコンピュータにはディスクが2つ接続され、ディスク0にOSがインストールされていて、ディスク1はパーティションが1つ設定されていることが分かります。

ALT 画面1 「ディスクの管理」ツールから参照したディスク設定

 ディスク1に着目してGet-PartitionコマンドレットとGet-Volumeコマンドレットを実行すると、画面2のようになります。

ALT 画面2 ディスク1に対して2つのコマンドレットを実行した結果

 Get-Partitionコマンドレットの実行結果では、ディスク1に2つのパーティション(予約領域と200GBのパーティション)が存在することになりますが、Get-Volumeコマンドレットでは200GBのボリュームは存在せず、「Unkown」と表示された0GBのボリュームがあることになっています。

 画面1のようにディスク1のパーティションは「RAW」、つまり未フォーマットの状態であり、OSからアクセス可能な記憶領域ではないため、Get-Volumeコマンドレットでは「Unkown」となり、容量0GBと表示されます。

 このように、Get-PartitionコマンドレットとGet-Volumeコマンドレットは同じ思われがちなパーティションとボリュームを区別して情報を取得でき、必要に応じて使い分けることが重要になります。

Get-Volumeコマンドレットの書式

Get-Volume [オプション]


Get-Volumeコマンドレットの主なオプション

オプション 意味
-DriveLetter 指定したドライブレターのボリューム情報を取得する。省略可能
-UniqueId ボリュームに割り当てられた唯一のID(ユニークID)を持つボリュームの情報を取得する。省略可能

全てのボリューム情報を取得する

 オプションを指定せずにGet-Volumeコマンドレット実行すると、全てのボリュームの情報がテーブル形式で表示されます(画面3)。

コマンドレット実行例

Get-Volume

ALT 画面3 Get-Volumeコマンドレットをオプションなしで実行すると、全てのボリュームの情報がテーブル形式で表示される

 実行結果からは、ボリュームに設定されたドライブレターやボリューム名、ボリュームのファイルシステムなどを確認できます。

 ボリューム名は「ドライブ名」とも呼ばれ、「Windowsエクスプローラー」の「ドライブ一覧」からも同じ名前を確認できます(画面4)。

ALT 画面4 Windowsエクスプローラー上でも、ボリューム名がドライブ名として表示されていることを確認できる

「Format-List」を使用して詳細情報を表示する

 オプションなしのGet-Volumeコマンドレットでは情報が足りない場合、「Format-List」コマンドレット(「fl」と省略可能)を使用してリスト形式で表示するとよいでしょう。

 なお、ドライブレターやユニークID(UniqueId)を指定せずに実行すると、全てのボリュームの詳細情報が取得されてしまうため、「-DriveLetter」オプションを指定することをお勧めします(画面5)。

コマンドレット実行例

Get-Volume -DriveLetter D|fl

ALT 画面5 ドライブレター「D」を指定してGet-Volumeコマンドレットを実行し、結果をリスト形式で表示した

 テーブル形式で取得できる情報の他、ボリュームのユニークIDやアロケーションユニットサイズ(画面5では「4096」)が表示されていることが分かります。


パーティション情報からボリューム情報を取得する

 前出の画面2でも利用したように、Get-Partitionコマンドレットとet-Volumeコマンドレットをパイプ(|)でつないで実行することで、指定したパーティション内のボリューム情報を取得できます(画面6)。

コマンドレット実行例

Get-Partition -DiskNumber 1 -PartitionNumber 2 | Get-Volume

ALT 画面6 Get-Partitionコマンドレットでディスク番号「1」、パーティション番号「2」を指定して、Get-Volumeコマンドレットを実行した結果

 Get-Volumeコマンドレットは、単一ディスク上のボリューム情報を取得する他、「Windows 10」や「Windows 11」「Windows Server 2012以降」でサポートされている「記憶域スペース」でボリュームを作成した際の情報取得にも使用できるので、ぜひとも押さえておきたいコマンドレットの一つといえます。

筆者紹介

後藤 諭史(ごとう さとし)

Microsoft MVP for Cloud and Datacenter Management(2012-2024)。現業の傍ら、コミュニティーイベントでの登壇や著作にてMicrosoftテクノロジーに関する技術情報の発信、共有を続けている。ネットワークやハードウェアといった物理層に近いところが大好きな、昔ながらのインフラ屋さん。得意技はケーブル整線。近著は『詳解! Windows Server仮想ネットワーク』(日経BP社)。


Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。