こんにちは、やまぱんです。
Windows を触っていると「UUID 教えて」と頼まれる場面が地味に多いんですが、よく聞き返すと指しているものが人によってバラバラだったりします。マシン本体の UUID、レジストリの MachineGuid、ディスクの GUID、ボリューム GUID …全部「UUID」って呼ばれがちです。
この記事では Windows でよく出てくる UUID / GUID 系の識別子を整理して、それぞれ PowerShell や レジストリ での確認方法をまとめます。
まずは「種類・取得元・主な用途・取得コマンド」を 1 枚にまとめた早見表を貼っておきます。この表だけで「どれを聞かれているのか」の当たりをつけやすくなります。

Contents
TL;DR
- Windows で「UUID」と一括で呼ばれているものには 複数の種類 がある(マシン本体 / OS の MachineGuid / ディスク / パーティション / ボリューム / ネットワークなど)。
- 用途と取得元(SMBIOS、Windows レジストリ、ストレージスタック、NIC)が違うので、確認コマンドも分かれる。
- 取得は基本 PowerShell の
Get-CimInstanceで OK。wmicは Windows 11 以降で非推奨かつ削除されつつあるので、新しく書くスクリプトでは使わない方が安全。 - 規格としての UUID 自体は RFC 4122 で定義されている 128 bit の識別子。Microsoft 用語の「GUID」も中身は同じ。
UUID と GUID、何が違うのか
まずよくある混乱から整理します。
- UUID(Universally Unique Identifier): RFC 4122 で定義された 128 bit の一意識別子。
12345678-1234-1234-1234-123456789ABCのような 32 桁の 16 進数表記が一般的。 - GUID(Globally Unique Identifier): Microsoft の用語。中身は UUID と同じ 128 bit 値で、相互変換できる。Windows API やレジストリ、COM などで「GUID」と書かれているものは、ほぼ RFC 4122 の UUID と同じものと考えて OK。
つまり「UUID と GUID は呼び方の違いで、中身は同じ」と覚えておけば、まずズレません。
Windows 上の「UUID 類」を種類別にざっくり整理
Windows で UUID と呼ばれがちなものを、出どころ別に並べるとこんな感じです。
| 種類 | 何を識別するか | どこから来る値か |
|---|---|---|
| マシン UUID(SMBIOS UUID) | 物理 / 仮想マシンそのもの | マザーボードのファームウェア(SMBIOS) |
| MachineGuid | Windows OS インストール単位 | Windows 固有のレジストリ値 |
| OS のシリアル番号 / プロダクト ID | Windows ライセンス / 製品識別 | OS インストール時に生成 |
| ディスク UUID / Disk Signature | 物理ディスク | GPT の場合 GUID、MBR の場合 32 bit シグネチャ |
| パーティション UniqueId | パーティション | パーティション作成時に生成 |
| ボリューム GUID / ボリュームシリアル | ボリューム(ドライブレター単位) | フォーマット時に生成 |
| PNPDeviceID | デバイス(ディスクや NIC など) | プラグアンドプレイ管理側で割当 |
| MAC アドレス | NIC(物理 / 仮想) | NIC のファームウェア(または OS 設定) |
| アプリ固有 GUID | アプリやコンポーネント | アプリ側で生成・管理 |
「マシンを一意に識別したい」「ライセンス管理用に Windows インストールを識別したい」「ストレージを管理したい」など、目的によって見るべき UUID が違う のがポイントです。
確認方法 早見表
実際の取得方法を、用途別にまとめました。基本は PowerShell + CIM に寄せておくと、Windows 11 / Windows Server 2025 以降の wmic 非推奨の流れにも巻き込まれずに済みます。
| 種類 | 推奨コマンド(PowerShell) | 代替 |
|---|---|---|
| マシン UUID(SMBIOS) | Get-CimInstance Win32_ComputerSystemProduct | Select-Object UUID |
wmic csproduct get UUID(非推奨) |
| OS シリアル番号 | Get-CimInstance Win32_OperatingSystem | Select-Object SerialNumber |
systeminfo |
| MachineGuid | Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Cryptography' -Name MachineGuid |
reg query |
| ディスク UUID / Signature | Get-Disk | Select-Object Number, UniqueId, Guid, Signature, SerialNumber |
diskpart の uniqueid disk |
| パーティション UniqueId | Get-Partition | Select-Object DiskNumber, PartitionNumber, UniqueId |
- |
| ボリューム GUID / シリアル | Get-Volume | Select-Object DriveLetter, FileSystemLabel, UniqueId |
mountvol |
| PNPDeviceID | Get-CimInstance Win32_DiskDrive | Select-Object DeviceID, PNPDeviceID |
デバイスマネージャー |
| MAC アドレス | Get-NetAdapter | Select-Object Name, MacAddress |
ipconfig /all |
Get-CimInstance の使い方は Get-CimInstance(PowerShell リファレンス) を参照してください。
マシン UUID(SMBIOS UUID)
説明
物理マシンや仮想マシンの マザーボード / ファームウェア(SMBIOS) に紐づく UUID。VM の世界では「VM 識別」「ライセンスフィンガープリント」「資産管理」などで頻出します。
取得元のクラスは Win32_ComputerSystemProduct で、UUID プロパティが文字列で返ってきます。
確認方法(PowerShell, 推奨)
Get-CimInstance Win32_ComputerSystemProduct | Select-Object UUID
確認方法(wmic, 非推奨)
wmic csproduct get UUID
wmic は Windows 10 21H1 で非推奨化 されており、Windows 11 IoT 25H2 では削除済み です。新規スクリプトでは
Get-CimInstanceに寄せるのが安全です。詳細は Deprecated features for Windows client を参照してください。
画面ショット

MachineGuid(Windows OS インストール固有の GUID)
説明
これは SMBIOS の UUID とは別物で、Windows のインストール単位で振られる GUID です。レジストリの HKLM\SOFTWARE\Microsoft\Cryptography\MachineGuid に格納されています。OS をクリーンインストールすると変わります。
「同じハードでも OS を入れ直したら別物として扱いたい」「Windows 側で識別したい」用途で参照します。
確認方法
Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Cryptography' -Name MachineGuid |
Select-Object MachineGuid
reg.exe で見たい場合:
reg query HKLM\SOFTWARE\Microsoft\Cryptography /v MachineGuid
OS シリアル番号 / プロダクト ID
説明
Windows ライセンスや OS インスタンスに紐づく識別子です。マシン UUID と混同されやすいですが、こちらは OS 側の値 です。Win32_OperatingSystem クラスから取得します。
確認方法
Get-CimInstance Win32_OperatingSystem |
Select-Object Caption, Version, SerialNumber
ディスク UUID / Disk Signature
説明
物理ディスクの一意識別子です。GPT か MBR かで表現が変わります。
- GPT(GUID Partition Table): 128 bit の GUID(例:
12345678-1234-1234-1234-123456789ABC) - MBR(Master Boot Record): 32 bit の Disk Signature(例:
A1B2C3D4)
確認方法(PowerShell, 推奨)
Get-Disk | Select-Object Number, FriendlyName, UniqueId, Guid, Signature, SerialNumber
Guid プロパティは GPT ディスクのとき、Signature は MBR ディスクのときに値が入ります。
確認方法(diskpart)
diskpart
list disk
select disk X
uniqueid disk
画面ショット

パーティション UniqueId
説明
各パーティションに割り当てられる一意識別子。通常 128 bit の GUID 形式で、パーティション作成時に生成されます。再フォーマットやクローン作成で値が変わる可能性がある点に注意してください。
確認方法
Get-Partition | Select-Object DiskNumber, PartitionNumber, DriveLetter, UniqueId
画面ショット

ボリューム GUID / ボリュームシリアル番号
説明
ドライブレター単位の「ボリューム」を識別する GUID とシリアル番号です。{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX} 形式のボリューム GUID は、フォーマット時に生成されます。マウントパスや VSS の話で出てくる \\?\Volume{GUID}\ の中身がこれです。
確認方法(PowerShell, 推奨)
Get-Volume | Select-Object DriveLetter, FileSystemLabel, FileSystem, UniqueId, Size
確認方法(mountvol)
mountvol
mountvol を引数なしで実行すると、各ボリュームの GUID パスとマウントポイントの対応が一覧で出ます。
画面ショット

PNPDeviceID(ディスクの by-id 相当)
説明
Linux の /dev/disk/by-id に近い感覚で使えるのが PNPDeviceID です。プラグアンドプレイ管理側でデバイスを一意に識別するための ID で、ベンダー名やシリアル風の文字列が混じった独特の形式になります。
「物理的にどのディスクか」を OS をまたいで識別したい場合に便利です。
確認方法
Get-CimInstance Win32_DiskDrive |
Select-Object DeviceID, Model, SerialNumber, PNPDeviceID
画面ショット

ネットワーク(MAC アドレス)
説明
厳密には「UUID」ではないですが、NIC を一意に識別する 48 bit の識別子で、UUID 類と一緒に資産情報として扱われることが多いので並べておきます。
確認方法
Get-NetAdapter | Select-Object Name, InterfaceDescription, MacAddress, Status
まとめ
- 「UUID」と一言で言っても、マシン本体 / OS / ディスク / パーティション / ボリューム / NIC で見るべき値が違う。
- 取得は
Get-CimInstanceベースの PowerShell に統一すると、wmic 非推奨の流れに巻き込まれずに済む。 - レジストリ起点の値(MachineGuid など)は別経路なので、レジストリ取得手順も覚えておくと便利。
- 一次情報は RFC 4122 と Microsoft Learn の WMI / CIM クラス、PowerShell リファレンスを当たるのが安全です。
参考リンク
- RFC 4122 - A Universally Unique IDentifier (UUID) URN Namespace
- Win32_ComputerSystemProduct クラス(Microsoft Learn)
- Win32_OperatingSystem クラス(Microsoft Learn)
- Get-CimInstance(PowerShell リファレンス)
- Deprecated features for Windows client(wmic の非推奨を含む)
以上、Windows の UUID 類まとめでした。手元の Windows でも、ぜひ見比べてみてください。